Почему нет атрибута измерения css? - PullRequest
7 голосов
/ 16 ноября 2009

В CSS мы можем определить:

margin-top: 10px;
margin-right: 1px;
margin-bottom: 1px;
margin-left: 1px;

или просто коротко:

margin: 10 1 1 1;

мы также можем определить:

border-left -right -bottom -top ...

или коротко:

border:1px solid black;

для определения размеров элемента нам нужно:

width: 150px;
height: 200px;

почему нет чего-то вроде:

dimension: 150px 200px;

или существует нечто подобное, и я просто не знаю этого?

(причина, по которой я спрашиваю: я всегда неправильно набираю 'dth' -> 'dht' и 'ght' -> 'gth' и хочу кого-то обвинить)

Ответы [ 6 ]

6 голосов
/ 16 ноября 2009

Учитывая, что мы работаем в 2-мерном пространстве, тогда будет только 2 атрибута, а именно: ширина и высота. Сравните это с полем, имеющим четыре возможных параметра.

Вы экономите очень мало текста, используя предложенный атрибут измерения, но рискуете добавить ошибки. Например, вы могли бы легко ошибиться, смешав высоту и ширину - в dimension: 150px 200px; тогда будет 150px высота или ширина? Как браузер будет интерпретировать dimension:200px, это будет означать только ширину 200 или 200 x 200px? Или что-то еще?

5 голосов
/ 16 ноября 2009

Если следовать соглашению об именах, вам нужно определить что-то вроде:

dimension-width: 150px;
dimension-height: 200px;

для возможности использования

dimension: 150px 200px;

Я не уверен, что это улучшит что-либо.

Edit:

Также необходимо учитывать min-height / max-height (+ width). Где они подойдут со свойством «измерение»?

1 голос
/ 16 ноября 2009

AFAIK что-то подобное не существует. Я предполагаю причину, почему существуют "длинные" и "короткие" формы, например margin (margin-top / bottom / ...) - это то, что естественно иметь их. Как они начинают с того же слова. margin.

Но для width и height не существует общего префикса, и что-то вроде dimension, dimension-width, dimension-height сейчас звучит странно. Но может показаться странным, что они решили указать это в стандарте css.

Теперь вы можете рассмотреть тот же вопрос на doctype.com, где кто-то, возможно, лучше понимает, как была указана CSS, и обсуждалась ли эта дискуссия когда-либо.

0 голосов
/ 16 ноября 2009

Возможно по ряду причин:

  1. Они не думали об этом на время ;-)
  2. Это не стоит дополнительного осложнение (хотя и незначительное) в спецификация, обработка, документация и т. д. когда вы можете сгруппировать только два значения - большинство других 4 в наименее.
  3. Я не думаю, что «измерение» правильное имя для использования. я бы предпочел размер - но тогда это может означать размер файла.
  4. Чтобы добавить его в спецификация, вы должны отдать предпочтение «размер-ширина», а не «ширина», чтобы имя оставалось прежним как margin-xxx.
0 голосов
/ 16 ноября 2009

Я не уверен, зачем вам определять размер изображения в CSS (за исключением, может быть, фонов), когда:

  1. вам не нужно определять размер изображения, и браузер просто сделает ОК
  2. вы можете использовать встроенные атрибуты / стили, если вы хотите объявить его

Более того, ваш вопрос субъективен. Spec is spec, так что будьте в курсе (или отправьте электронное письмо на W3C с вашим предложением, чтобы они могли добавить CSS 4+ в следующие 20 лет)

0 голосов
/ 16 ноября 2009

Нет, ничего подобного не существует, хотя я согласен, что это было бы удобно. Что касается того, почему вы должны спросить парней на W3C.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...