La respuesta anterior es incorrecta, si quieres ver por qué intentar esto:
<body style="background-color: #f00">
<div style="border: 1px solid #000">
<h1 style="background: #fff; margin-top: -5px; margin-left: 10px; padding: 0 10px; width: 150px;">Foobar</h1>
</div>
<fieldset><legend>Foobar</legend></fieldset>
</body>
yo sepa no hay ninguna manera de tener ese efecto-interrupción frontera que el elemento legend
causa en el borde fieldset
. No creo que sea posible solo con CSS, es solo algo que forma parte de la forma en que se procesa la etiqueta fieldset
.
Aclaración: No sé de cualquier forma de posicionar un elemento de bloque o en línea tal que extiende a ambos lados de la frontera visible de su elemento de bloque que contiene, y luego causas del borde del elemento contenedor para ser roto por detrás de su caja. Eso es lo que hace un <legend>
al borde de su elemento que contiene <fieldset>
.
Mi respuesta no es incorrecta, solo requiere ciertas condiciones para funcionar. Descubrirá que este suele ser el caso con este tipo de "trucos"; casi nunca hay una solución única para todos. –
Bueno, su pregunta era "¿cómo puedo peinar un elemento como un par de campo/leyenda?" Cuando miras el documento que proporcioné, ¿ves dos bloques idénticos? –
Lo que realmente quería saber es si hay una manera (usando el estándar CSS) de obtener el efecto exacto que crea un 'fieldset' /' legend', o si el efecto está codificado de forma fija solo para 'fieldset' /' legend '. Como parece estar codificado, acepto esta respuesta. – Jakob