CSS "цвет" против "цвет шрифта" - PullRequest
130 голосов
/ 23 марта 2010

Кто-нибудь знает, почему CSS предоставляет color для текста, но не имеет font-color или text-color?

Кажется очень нелогичным, вроде text-decoration: underline, а не font-style или что-то связанное со шрифтами.

Кто-нибудь знает, почему / как W3C создал такой широкий набор имен CSS, как этот?

Ответы [ 3 ]

184 голосов
/ 23 марта 2010

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

104 голосов
/ 23 марта 2010

Я думаю, что одной из причин может быть то, что цвет применяется к вещам, отличным от шрифта. Например:

div {
    border: 1px solid;
    color: red;
}

Выводит как красный цвет шрифта, так и красную рамку.

В качестве альтернативы, это может быть просто из-за того, что стандарты CSS W3C являются полностью отсталыми и бессмысленными, как доказано в других местах.

9 голосов
/ 05 августа 2016

Я знаю, что это старый пост, но, как сказал MisterZimbu, свойство color определяет значения других свойств, таких как border-color и, с CSS3, currentColor.

currentColor очень удобно, если вы хотите использовать цвет шрифта для других элементов (например, фона или пользовательских флажков и радиостанций внутренних элементов).

Пример:

.element {
  color: green;
  background: red;
  display: block;
  width: 200px;
  height: 200px;
  padding: 0;
  margin: 0;
}

.innerElement1 {
  border: solid 10px;
  display: inline-block;
  width: 60px;
  height: 100px;
  margin: 10px;
}

.innerElement2 {
  background: currentColor;
  display: inline-block;
  width: 60px;
  height: 100px;
  margin: 10px;
}
<div class="element">
  <div class="innerElement1"></div>
  <div class="innerElement2"></div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...