Почему Safari и Chrome игнорируют свойство CSS с минимальной шириной? Пример http://jsfiddle.net/8YFHu/2/ Это работает в IE и Firefox, но не в Safari и Chrome.
Safari и Chrome игнорируют минимальную ширину CSS
Ответ 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-width
(и max-width
, если на то пошло) применяются к:
все элементы, но не замененные встроенные элементы, строки таблицы и строка группы
Таким образом, казалось бы, Chrome и Safari не соответствуют стандарту.
Edit
Посмотрев чуть дальше по соответствующему разделу спецификации, я заметил, что он указывает:
В CSS 2.1 влияние "min-width" и "max-width" на таблицы, встроенные таблицы, ячейки таблицы, столбцы столбцов и группы столбцов undefined.
Так что на самом деле все выглядит так, как будто никто не ошибается, и каждый может просто сделать свое дело.
Ответ 2
По моему опыту, часто нецелесообразно определять ширины на элементах td. Лучшим обходным решением, которое я нашел для этого ограничения, является установка минимальной ширины в содержащем элементе div для таблицы.