Подтвердить что ты не робот

Safari и Chrome игнорируют минимальную ширину CSS

Почему Safari и Chrome игнорируют свойство CSS с минимальной шириной? Пример http://jsfiddle.net/8YFHu/2/ Это работает в IE и Firefox, но не в Safari и Chrome.

4b9b3361

Ответ 1

Chrome и Safari просто не поддерживают свойство min-width на элементах table. Тем не менее, они будут относиться к min-width при применении к ячейкам таблицы.

После некоторого быстрого тестирования выясняется, что поддержка такова:

  • Firefox: поддерживается (проверено в 5, не уверен, с какой версии)
  • Internet Explorer: поддерживается (поскольку IE8 и ниже IE7, похоже, не поддерживают его)
  • Chrome: не поддерживается (все версии, насколько я могу судить)
  • Safari: не поддерживается (все версии, насколько я могу судить)
  • Opera: поддерживается (тестируется в версии 11.5, не уверен, с какой версии)

Более подробную информацию можно найти в статье MDN об этом свойстве, хотя в статье утверждается, что свойство не поддерживается в IE, хотя это с IE8.

спецификация CSS2.1 утверждает, что min-widthmax-width, если на то пошло) применяются к:

все элементы, но не замененные встроенные элементы, строки таблицы и строка группы

Таким образом, казалось бы, Chrome и Safari не соответствуют стандарту.

Edit

Посмотрев чуть дальше по соответствующему разделу спецификации, я заметил, что он указывает:

В CSS 2.1 влияние "min-width" и "max-width" на таблицы, встроенные таблицы, ячейки таблицы, столбцы столбцов и группы столбцов undefined.

Так что на самом деле все выглядит так, как будто никто не ошибается, и каждый может просто сделать свое дело.

Ответ 2

По моему опыту, часто нецелесообразно определять ширины на элементах td. Лучшим обходным решением, которое я нашел для этого ограничения, является установка минимальной ширины в содержащем элементе div для таблицы.