2012-02-16 17 views
5

Como principiante de CSS noté que si no declara el color de borde en forma de taquigrafía, pero antes de declarar el color de fuente, ese color se aplicará también al anterior, p.Bordes aplicando color de fuente en CSS

#crazyElement {color:red; border:1px solid;} 

both will be red. Además, si declara el color de la fuente para el cuerpo, cada borde sin color declarado en forma abreviada también aplicará ese color.

¿Es esto normal? Tal vez no es nada especial, sino como un novato sólo quería comprobar ...

Respuesta

10

Eso es normal, y perfectamente en línea con el specification

Si el color del borde de un elemento no se especifica con una propiedad frontera, los agentes de usuario debe utilizar el valor de la la propiedad 'color' del elemento como el valor calculado para el color del borde.

través @BoltClock CSS3 Spec. y la currentColor que es como se define.

+0

Principiantes :) Tnx – vucibatina

+0

@vucibatina Si tiene curiosidad, puede buscar cualquier propiedad css utilizando el modificador 'site: w3.org' en el cuadro de búsqueda para obtener resultados muy relevantes para cualquier propiedad. – Andrew

0

Desde el specs:

Esta propiedad describe el color de primer plano del texto contenido de un elemento. Además, se usa para proporcionar un valor indirecto potencial de (color actual) para cualquier otra propiedad que acepte valores de color. Si la palabra clave 'currentColor' se establece en la propiedad 'color' en sí, se trata como 'color: inherit'.

Así que sí, es normal.

+0

Esta cita por sí sola no responde a la pregunta de por qué los bordes toman el color del texto de un elemento por defecto (que se menciona en otra parte de la especificación). – BoltClock

+0

Se explica que el valor de la propiedad de "color" se usa en algunos otros elementos cuyo color no está especificado, aunque yo admin. La respuesta de Andrew es mejor que la mía. –

Cuestiones relacionadas