¿Es posible apuntar a la <br/>
etiqueta de salto de línea con CSS?
Me gustaría tener una línea discontinua de 1 px cada vez que hay un salto de línea. Estoy personalizando un sitio con mi propio CSS y no puedo cambiar el conjunto de HTML, de lo contrario lo usaría de otra manera.
No creo que sea posible, pero tal vez hay una manera de que alguien sepa.
html
css
line-breaks
dc3
fuente
fuente
Respuestas:
BR
genera un salto de línea y solo es un salto de línea. Como este elemento no tiene contenido, solo hay unos pocos estilos que tienen sentido para aplicarlo, comoclear
oposition
. Puede establecerBR
el borde pero no lo verá ya que no tiene dimensión visual.Si desea separar visualmente dos oraciones, entonces probablemente quiera usar la regla horizontal que está destinada a este objetivo. Dado que no puede cambiar el marcado, me temo que usando solo CSS no puede lograr esto.
Parece que ya se ha discutido en otros foros. Extracto de Re: Configuración de la altura de un elemento BR usando CSS :
También encontré una aclaración en la especificación CSS 1 (ninguna especificación de nivel superior lo menciona):
Las pruebas de Grant Wagner muestran que no hay forma de peinar
BR
como se puede hacer con otros elementos. También hay un sitio en línea donde puede probar los resultados en su navegador .Actualizar
pelms realizó algunas investigaciones adicionales y señaló que IE8 (en Win7) y Chrome 2 / Safari 4b le permiten un
BR
poco de estilo . Y de hecho, revisé la página de demostración de IE con el motor IE8 de IE Net Renderer , y funcionó.Actualización 2 c69 hizo algunas investigaciones adicionales, y resulta que se puede peinar el marcador para
br
muy fuertemente (aunque, no a través del navegador), sin embargo, esto no afectará a la ruptura del verso en sí, ya que parecen pertenecer al contenedor principal.fuente
Intente lo siguiente, lo armé usando la Actualización 2 de otra respuesta con altos votos, y funcionó perfectamente para mí:
fuente
Hay una buena razón por la que necesitaría diseñar una
<br>
etiqueta.Cuando forma parte del código, no desea (o no puede) cambiar y desea que este en particular
<br>
no se muestre.Puede ahorrarle mucho tiempo y, a veces, su día.
fuente
Para el beneficio de cualquier visitante futuro que haya perdido mis comentarios:
No funciona.
Ha sido probado en IE 6, 7 y 8, Firefox 2, 3 y 3.5B4, Safari 3 y 4 para Windows, Opera 9.6 y 10 (alfa) y Google Chrome (versión 2) y no funcionó en ninguno de ellos. Si en algún momento en el futuro alguien encuentra un navegador que admite un borde en un
<br>
elemento, no dude en actualizar esta lista.También tenga en cuenta que probé una serie de otras cosas:
De ellos, lo siguiente funciona en Opera 9.6 y 10 (alfa) (¡gracias porneL!):
No es muy útil cuando solo se admite en un navegador, pero siempre me parece interesante ver cómo diferentes navegadores implementan la especificación.
fuente
content:""; display:block
a la segunda regla.Sé que no puedes editar el HTML, pero si puedes modificar el CSS, ¿puedes agregar JavaScript?
si es así, puede incluir jquery, entonces podría hacer
fuente
Sin embargo, no se usa mucho en un solo navegador.
(Nota: estoy usando IE 8.0.7100 (en Win7 RC) si eso hace alguna diferencia)
También,
o,
br { content: "" }
da una línea discontinua en Chrome 2 / Safari 4b pero pierde el salto de línea que (a menos que alguien pueda encontrar una forma de reintroducir eso) lo hace menos inútil.
por ejemplo ,
prueba de IE8 , prueba de Chrome / Safari y otra
fuente
BR
. Gracias, actualicé mi respuesta con los resultados de sus pruebas.Mis propias pruebas muestran de manera concluyente que a las
br
etiquetas no les gusta ser objetivo de CSS.Pero si puede agregar estilo, ¿entonces probablemente también pueda agregar una etiqueta de scrip al encabezado de la página? Enlace a un externo
.js
que hace algo como esto:En resumen, no es óptimo, pero aquí está mi solución.
fuente
Esto parece resolver el problema:
fuente
BR es un elemento en línea, no un elemento de bloque.
Así que tú necesitas:
De lo contrario, los navegadores que son un poco más exigentes con estas cosas se negarán a aplicar bordes a los elementos BR, ya que los elementos en línea no tienen bordes, relleno o márgenes.
fuente
ACTUALIZADO 13/09/2019:
El propósito de diseñar la
<br>
etiqueta de esta manera es hacer un salto de línea "más grande" (es decir, con un poco de espacio extra entre las líneas).La clase "oldbig" (a continuación) se probó y funcionó correctamente en Chrome 66.0.3359.181, Firefox Quantum 60.0.2, Edge 42.17134.1.0 e IE 11.48.17134.0, para darle estilo. Desafortunadamente, se rompió en Chrome versión 76 y sus derivados (alrededor de agosto de 2019). El síntoma es que ya no se muestra el espacio extra entre líneas.
La clase "newbig" se ha probado y funciona correctamente en las versiones actuales de Chrome (76.0.3809.132), Opera, Firefox, Edge, IE, Brave y Palemoon:
Aquí hay una demostración:
Este es el resultado, que se muestra en Chrome v.76:
fuente
Esto funcionará, pero solo en IE. Lo probé en IE8.
fuente
Coloqué una
<br>
etiqueta en una<span>
etiqueta y era capaz de usardisplay:none;
en el<span>
que el control cuando no utilizar la<br>
etiqueta usando Consultas de medios.fuente
<br>
directamente en lugar de envolverlo en un lapso?vieja pregunta, pero esta es una solución bastante ordenada y limpia, podría usarse para personas que todavía se preguntan si es posible :):
con esta solución, también puede eliminar BRs en sitios web (solo configure el ancho en 0px)
fuente
¿Por qué no solo usar la etiqueta HR? Está hecho exactamente para lo que quieres. Es como intentar hacer un tenedor para comer sopa cuando hay una cuchara justo en frente de ti en la mesa.
fuente