#html #css
Вопрос:
Я заметил, что значения свойств CSS иногда по умолчанию используют «px», даже если это не указано. Однако для других свойств не указать единицу измерения является ошибкой. Почему это происходит? В общем, какие свойства нуждаются в «px», а какие по умолчанию «px»?
Вот несколько примеров каждого типа собственности. Я использую последнюю версию Firefox на Ubuntu:
- По умолчанию «px»:
- поля/заполнение
- также поля-слева, отступы-справа и т. Д.
- ширина/высота
- поля/заполнение
- Игнорируется/ошибки отсутствуют, если единица измерения:
- обивка-встроенная, поля-блок и т. Д.
- кроме того, начало блока полей, заполнение встроенного конца и т. Д.
- радиус границы
- также граница-радиус-верхний левый и т. Д.
- обивка-встроенная, поля-блок и т. Д.
Я замечаю, что список «игнорируемых» стал новее. ширина/высота/заполнение/поля такие же старые, как холмы, радиус границы немного новее, а заполнение/поле-встроенное/блок-совершенно новые и еще даже не по краю, когда я пишу это. Имеет ли возраст какое-то отношение к этому? Существовала ли какая-то стандартизация значений свойств в какой-то момент в прошлом, и разработчики CSS не хотели требовать единиц измерения для старых свойств, потому что это нарушило бы старые веб-сайты?
Почему некоторым свойствам CSS нужен модуль, а некоторым по умолчанию «px»?
Комментарии:
1. Значения по умолчанию «px»: —> как вы проверили, что они по умолчанию равны px?
2. @TemaniAfif, если я проверил, опробовав его. Однако инструменты разработки очень помогли.
Ответ №1:
Все свойства CSS, которые принимают значение длины, требуют единиц измерения (примером которых px
является) для значений, отличных от 0
.
Это всегда было правилом для CSS, так что это не имеет никакого отношения к сопровождающим спецификации CSS.
Для обратной совместимости с ошибочными браузерами 1990-х годов, когда тип документа страницы запускает режим «причуды«, длина по умолчанию px
равна единицам. Это намеренная эмуляция ошибок разработчиками браузеров.
Я предполагаю, что это правило обратной совместимости не применяется к более новым свойствам, которых не существовало в те дни, когда существовали эти браузеры.
Всегда используйте Доктайп, который запускает режим стандартов. Несоответствия режима причуд больше проблем, чем они того стоят. Всегда указывайте единицы измерения для ненулевых длин.
Комментарии:
1. Я согласен, что режим причуд-это больше проблем, чем того стоит. Теперь, когда я знаю этот короткий путь, у меня возникает соблазн отказаться от «px» только в этих случаях, чтобы сэкономить на наборе текста, по крайней мере, в домашних/тестовых проектах, хотя я, вероятно, этого не сделаю.
2. Вау, только что понял, что я на самом деле был в режиме причуд. Это тестовое репо, так что мне просто нужно было, чтобы оно выглядело нормально. И все же мне следовало быть более внимательным.