CSS Box
CSS Box
CSS Box
Estructura
El lenguaje CSS trata a todos los elementos como si estuvieran contenidos en cajas
rectangulares. Es lo que se llama el modelo de cajas. Cada una de estas cajas puede tener un
borde que lo delimita, un margen interno y un margen externo. Podemos también definir otra
serie de propiedades como su altura, su anchura, forma de verse, colores de fondo, etc. En este
tema veremos los márgenes y bordes que pueden tener estas cajas, dejando para temas
posteriores otra serie de propiedades. Si normalmente al ver una página Web no vemos una
caja en cada párrafo o en cada imagen, es porque la mayoría de las veces los valores de los
márgenes y del borde son cero o transparentes, (valores por defecto) pero a cualquier
elemento definido mediante una etiqueta HTML se le podrían aplicar los bordes y márgenes
que vamos a explicar a continuación.
• Relleno (padding): Es un margen alrededor del contenido que forma parte de la propia caja.
• Margen (margin): Es un margen exterior a la caja, que aunque no forma parte de la caja, deja
un espacio entre ésta y los otros elementos que la rodean.
Bordes
Podemos definir el borde de cualquier elemento HTML mediante las propiedades que vamos a
ver a continuación. Podemos definir además distintas propiedades para cada uno de los cuatro
lados del elemento. Las propiedades las veremos en grupos de cuatro, en ellas se distingue
mediante las palabras:
Propiedades border-width.
Los valores de la anchura de los bordes se pueden indicar mediante una medida o mediante las
palabras clave thin (borde delgado), medium (borde normal) y thick (borde ancho).
• Si se indican tres valores: El primero se aplica al borde superior, el segundo a los bordes
izquierdo y derecho, y el tercero al borde inferior.
Propiedades border-color.
También podemos establecer el color de los bordes mediante la utilización de una propiedad
de tipo "shorthand", que permiten indicar las propiedades anteriores de forma resumida:
La propiedad border-color permite indicar entre uno y cuatro valores, que pueden ser
definiciones de color o la palabra clave transparent. El número de valores indicado se
interpreta exactamente igual que para la propiedad anterior (border-width).
Propiedades border-style.
Los valores para esta propiedad sólo pueden indicarse mediante alguna de las palabras
reservadas. El estilo por defecto es none, lo que hace que los elementos no muestren ningún
borde visible, a menos que se establezca explícitamente un estilo de borde.
También podemos establecer el estilo de los bordes mediante la utilización de una propiedad
de tipo "shorthand", que permiten indicar las propiedades anteriores de forma resumida:
La propiedad border-style permite indicar entre uno y cuatro valores, que serán las palabras
claves indicadas. El número de valores indicado se interpreta exactamente igual que para las
propiedades anteriores.
Propiedad border tipo "shorthand”
Márgenes
El margen interno "padding”
Propiedades padding
Al igual que ocurre con el borde, hay cuatro propiedades padding para controlar los márgenes
internos, que se corresponden con los cuatro lados de la caja. Su definición es:
propiedad padding tipo "shorthand”
Al igual que sucede en las propiedades "shorthand" de los bordes, esta propiedad puede tener
entre uno y cuatro valores, con el mismo significado que en los casos anteriores. estos son:
• Si se indican tres valores: El primero se aplica al margen superior, el segundo a los márgenes
izquierdo y derecho, y el tercero al margen inferior.
El margen externo es el espacio que dejamos entre el borde y los demás elementos
adyacentes. No forma parte de la caja, aunque sí hay que tenerlo en cuenta para organizar los
elementos de la página. En ocasiones tiene comportamientos un tanto específicos que
veremos más adelante.
propiedades margin
Al igual que ocurre con el borde y el relleno (padding), hay cuatro propiedades margin para
controlar los márgenes externos, que se corresponden con los cuatro lados de la caja. Su
definición es:
El margen externo: margin Las unidades más utilizadas para indicar los márgenes de un
elemento son los píxeles (cuando se requiere una precisión total), los em (para hacer diseños
que mantengan las proporciones) y los porcentajes (para hacer diseños líquidos o fluidos). El
valor auto sólo tiene efecto con los márgenes horizontales, y deja todo el margen posible al
lado indicado, siempre dentro del elemento contenedor. Así si queremos llevar la caja a la
derecha, indicaremos margin-left: auto y al contrario si la queremos llevar a la izquierda. La
aplicación a la vez de marginleft: auto y margin-right: auto nos centra la caja respecto de su
elemento contenedor.
Al igual que sucede en las propiedades "shorthand" del relleno (padding), esta propiedad
puede tener entre uno y cuatro valores, con el mismo significado que en el caso anterior.
Tratamiento de los márgenes verticales.
Los márgenes verticales sólo se pueden aplicar a elementos de bloque e imágenes, por lo que
elementos tales como enlaces, etiquetas de texto en negrita o en cursiva y otro tipo de
etiquetas que son elementos en línea, sólo aceptan los márgenes horizontales.
Igualmente, si un elemento está contenido dentro de otro elemento, sus márgenes verticales
se fusionan y resultan en un nuevo margen de la misma altura que el mayor margen de los que
se han fusionado: