2010-03-23 10 views
109

Quelqu'un sait pourquoi CSS fournit color pour le texte, mais n'a pas font-color ou text-color?CSS "couleur" vs "font-color"

Semble très contre-intuitif, un peu comme text-decoration: underline plutôt que font-style ou quelque chose en rapport avec les polices.

Est-ce que quelqu'un sait pourquoi/comment le W3C est-il arrivé avec un tel éventail de noms CSS comme celui-ci?

+1

j'ai commencé un petion d'introduire la propriété "couleur de la police". Peut-être que certains d'entre vous voudraient le signer. https://www.change.org/p/world-wide-web-consortium-introduce-the-font-color-css-property?recruiter=238928026&utm_source=share_for_starters&utm_medium=copyLink – tsuma534

Répondre

89

Je pense que l'une des raisons pourrait être que la couleur est appliquée à d'autres choses que la police. Par exemple:

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

Donne à la fois une couleur de police rouge et une bordure rouge. Alternativement, il se pourrait simplement que les normes CSS du W3C soient complètement rétrogrades et absurdes comme en témoigne ailleurs.

+2

bon point mais la bordure n'obtient pas la famille de police –

+3

Essayez d'ajouter ce qui suit au CSS sur cette page: '.post-text { couleur: bleu; bordure: 1px rouge solide; } 'Vous verrez que la couleur du texte est bleue même si la couleur de la bordure est rouge. – Robusto

+0

alors par définition, la couleur de police est plus rapide que la couleur car elle doit faire moins de travail. – kta

156

De la même manière que Boston a conçu son plan de rue. Ils suivaient les sentiers de la vache déjà là et construisaient des maisons là où les rues ne l'étaient pas, et au bout d'un moment c'était trop difficile de changer.

+11

Malheureusement, ce sont les mêmes personnes qui remuent les doigts à la communauté pour utiliser des tableaux comme structures de mise en page si longtemps que CSS ne parvient pas à fournir une grille de mise en page équivalente. –

+3

@Fred - Oui, c'est pourquoi j'ai continué à utiliser des tables. J'espère que HTML 5 aura une étiquette de grille. –

+2

quoi? Je ne comprends pas – miky

4

Je sais c'est un vieux postб mais comme MisterZimbu a déclaré, la propriété color définit les valeurs des autres propriétés, comme border-color et, avec CSS3, de currentColor.

currentColor est très pratique si vous voulez utiliser la couleur de la police pour d'autres éléments (comme les cases à cocher en arrière-plan ou personnalisées et les radios des éléments internes par exemple).

Exemple:

<style type="text/css"> 
    .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; 
    } 
</style> 
<div class="element"> 
    <div class="innerElement1"></div> 
    <div class="innerElement2"></div> 
</div> 
+1

Vous venez de me faire peur. En classant cela dans des astuces CSS soignées. – kamranicus