Fred Wilson
Fred Wilson

Reputation: 2207

CSS "color" vs. "font-color"

Anyone know why CSS provides color for text, but does not have font-color or text-color?

Seems very counter-intuitive, kind of like text-decoration: underline rather than font-style or something related to fonts.

Does anyone know why/how the W3C came up with such a wide array of CSS names like this?

Upvotes: 142

Views: 367440

Answers (3)

quasi
quasi

Reputation: 441

I know this is an old post but as MisterZimbu stated, the color property is defining the values of other properties, as the border-color and, with CSS3, of currentColor.

currentColor is very handy if you want to use the font color for other elements (as the background or custom checkboxes and radios of inner elements for example).

Example:

.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>

Upvotes: 11

MisterZimbu
MisterZimbu

Reputation: 2713

I would think that one reason could be that the color is applied to things other than font. For example:

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

Yields both a red font color and a red border.

Alternatively, it could just be that the W3C's CSS standards are completely backwards and nonsensical as evidenced elsewhere.

Upvotes: 118

Robusto
Robusto

Reputation: 31893

The same way Boston came up with its street plan. They followed the cow paths already there, and built houses where the streets weren't, and after a while it was too much trouble to change.

Upvotes: 198

Related Questions