La Propiedad BORDER-BLOCK-END-STYLE

La propiedad border-block-end-style en CSS se utiliza para establecer el estilo del borde en el final de la dimensión del bloque de un elemento.
La propiedad border-block-end-style
en CSS se utiliza para establecer el estilo del borde en el final de la dimensión del bloque de un elemento. Al igual que otras propiedades con el prefijo block-
, forma parte de las Propiedades Lógicas de CSS. Esto significa que el borde al que se aplica este estilo dependerá del modo de escritura y la dirección del texto del elemento.
En la mayoría de los idiomas (como el español), la dirección del bloque es vertical y fluye de arriba hacia abajo. En este contexto, border-block-end-style
afectará el estilo del borde inferior del elemento. Sin embargo, en modos de escritura verticales, podría afectar el estilo del borde izquierdo o derecho.
Sintaxis Básica
La sintaxis básica para usar la propiedad border-block-end-style
es la siguiente:
selector {
border-block-end-style: <estilo>;
}
Donde <estilo>
es el estilo que deseas aplicar al borde al final del bloque.
Valores de la Propiedad border-block-end-style
Puedes usar los siguientes valores para especificar el estilo del borde:
none
: No se muestra ningún borde. El ancho del borde es 0.hidden
: Similar anone
, pero en conflictos de bordes de tabla,hidden
tiene la prioridad más alta.dotted
: El borde se muestra como una serie de puntos.dashed
: El borde se muestra como una serie de guiones.solid
: El borde se muestra como una línea continua.double
: El borde se muestra como dos líneas sólidas paralelas. El ancho total es la suma del ancho de las dos líneas y el espacio entre ellas.groove
: El borde parece estar tallado en el lienzo. El efecto depende del color del borde.ridge
: El borde parece sobresalir del lienzo. El efecto también depende del color del borde.inset
: El contenido del elemento parece estar incrustado.outset
: El contenido del elemento parece sobresalir.
Comportamiento en Diferentes Modos de Escritura
El efecto de border-block-end-style
depende del modo de escritura del elemento:
-
Modo de Escritura Horizontal (
horizontal-tb
- predeterminado):border-block-end-style
se aplica al estilo del borde inferior del elemento.
-
Modo de Escritura Vertical (
vertical-rl
- de derecha a izquierda):border-block-end-style
se aplica al estilo del borde izquierdo del elemento.
-
Modo de Escritura Vertical (
vertical-lr
- de izquierda a derecha):border-block-end-style
se aplica al estilo del borde derecho del elemento.
Ejemplo con modo de escritura vertical:
<!DOCTYPE html>
<html>
<head>
<style>
.elemento-vertical-rl {
width: 150px;
height: 200px;
border: 2px solid gray; /* Borde base para ver la estructura */
writing-mode: vertical-rl; /* Texto vertical de derecha a izquierda */
border-block-end-width: 5px; /* Necesitamos un ancho para que el estilo sea visible */
border-block-end-color: purple; /* También necesitamos un color */
border-block-end-style: dashed; /* El estilo dashed estará en el lado izquierdo */
}
.elemento-vertical-lr {
width: 150px;
height: 200px;
border: 2px solid gray; /* Borde base para ver la estructura */
writing-mode: vertical-lr; /* Texto vertical de izquierda a derecha */
border-block-end-width: 5px; /* Necesitamos un ancho para que el estilo sea visible */
border-block-end-color: orange; /* También necesitamos un color */
border-block-end-style: dotted; /* El estilo dotted estará en el lado derecho */
}
.elemento-horizontal {
width: 200px;
height: 100px;
border: 2px solid gray; /* Borde base para ver la estructura */
border-block-end-width: 5px; /* Necesitamos un ancho para que el estilo sea visible */
border-block-end-color: green; /* También necesitamos un color */
border-block-end-style: solid; /* El estilo solid estará en la parte inferior */
}
</style>
</head>
<body>
<div class="elemento-vertical-rl">Texto vertical (RL)</div>
<div class="elemento-vertical-lr">Texto vertical (LR)</div>
<div class="elemento-horizontal">Texto horizontal</div>
</body>
</html>
En este ejemplo, el borde izquierdo del elemento vertical (RL) será punteado, el borde derecho del elemento vertical (LR) será de puntos, y el borde inferior del elemento horizontal será sólido.
Relación con border-block-end-color
y border-block-end-width
Es fundamental recordar que border-block-end-style
solo establece el estilo del borde. Para que el borde sea visible, también debes definir un border-block-end-width
(el grosor del borde) y un border-block-end-color
. Si el estilo se establece en none
o hidden
, no se mostrará ningún borde, independientemente del ancho o el color que definas.
Ejemplo:
<!DOCTYPE html>
<html>
<head>
<style>
.elemento-sin-ancho-color {
width: 200px;
height: 100px;
border: 1px solid gray;
border-block-end-style: dashed; /* Este estilo no se mostrará porque falta el ancho y el color */
}
.elemento-completo {
width: 200px;
height: 100px;
border: 1px solid gray;
border-block-end-width: 5px;
border-block-end-color: blue;
border-block-end-style: dotted; /* Este estilo de puntos azul se mostrará en la parte inferior */
}
</style>
</head>
<body>
<div class="elemento-sin-ancho-color">Este elemento no mostrará un borde de guiones porque falta el ancho y el color.</div>
<div class="elemento-completo">Este elemento mostrará un borde de puntos azul en la parte inferior.</div>
</body>
</html>
Relación con border-block-start-style
La propiedad border-block-start-style
es la contraparte de border-block-end-style
y se utiliza para establecer el estilo del borde al inicio de la dimensión del bloque (típicamente el estilo del borde superior en modo horizontal).
Relación con border-inline-end-style
Para establecer el estilo del borde al final de la dimensión en línea (típicamente el estilo del borde derecho en modo horizontal), se utiliza la propiedad border-inline-end-style
.
Casos de Uso Comunes
- Estilizar consistentemente el borde inferior (o equivalente lógico): Asegurar que el borde al final del flujo del bloque tenga un estilo específico en diferentes contextos.
- Crear separadores visuales con estilos particulares: Utilizar estilos como
dashed
odotted
para indicar una separación entre elementos. - Diseños que necesitan ser compatibles con diferentes modos de escritura: Utilizar propiedades lógicas facilita la adaptación a idiomas con diferentes flujos de texto.
Compatibilidad del Navegador
Las propiedades lógicas como border-block-end-style
tienen buena compatibilidad con los navegadores modernos. Sin embargo, para asegurar la compatibilidad con navegadores más antiguos, es posible que necesites usar la propiedad física border-bottom-style
como alternativa o en conjunto.
Consideraciones
- Recuerda que
border-block-end-style
solo establece el estilo. Necesitas usarborder-block-end-width
yborder-block-end-color
para definir el ancho y el color del borde. - Si el estilo se establece en
none
ohidden
, el borde no se mostrará. - Si solo estás trabajando con un modo de escritura horizontal y no necesitas la flexibilidad de las propiedades lógicas, puedes seguir utilizando
border-bottom-style
. - Las propiedades lógicas son especialmente útiles en proyectos que requieren soporte para múltiples idiomas con diferentes modos de escritura.
Conclusión
La propiedad border-block-end-style
te permite controlar fácilmente el estilo del borde al final de la dimensión del bloque de tus elementos CSS, facilitando la creación de diseños adaptables y consistentes en diferentes contextos de escritura. Al combinarla con border-block-end-width
y border-block-end-color
, tienes un control completo sobre la apariencia de este borde lógico. ¡Experimenta con diferentes estilos y modos de escritura para apreciar su utilidad!