Non, il n'est pas vraiment possible. Même les éditeurs de navigateurs eux-mêmes sont aux prises avec.
Bien sûr, je ne pouvais pas résister à avoir un aller à elle de toute façon. Et j'ai passé tellement de temps, que l' Anonyme est venu avec une "solution" plutôt similaire à la mienne dans le temps (sa test1
). Mais le mien n'a pas besoin de la largeur fixe "légende".
Ce code est évidemment un peu un hack, et je ne sais pas comment il va se débrouiller dans des sites complexes. Je suis également d'accord avec Anonyme, que l'utilisation d'un fieldset pour le groupement n'est pas presque aussi mauvais que d'utiliser des tableaux pour la mise en page. Des balises html fieldsets été conçu pour regrouper des éléments, mais en HTML, ils sont vraiment censés être utilisés pour regrouper des contrôles de formulaire.
<!doctype html>
<style>
.fieldset {
border: 2px groove threedface;
border-top: none;
padding: 0.5em;
margin: 1em 2px;
}
.fieldset > h1 {
font: 1em normal;
margin: -1em -0.5em 0;
}
.fieldset > h1 > span {
float: left;
}
.fieldset > h1:before {
border-top: 2px groove threedface;
content: ' ';
float: left;
margin: 0.5em 2px 0 -1px;
width: 0.75em;
}
.fieldset > h1:after {
border-top: 2px groove threedface;
content: ' ';
display: block;
height: 1.5em;
left: 2px;
margin: 0 1px 0 0;
overflow: hidden;
position: relative;
top: 0.5em;
}
</style>
<fieldset><legend>Legend</legend> Fieldset</fieldset>
<div class="fieldset"><h1><span>Legend</span></h1> Fieldset</div>
Comme une note de côté, vous pouvez également avoir un regard sur le HTML5 figure
et figcaption
- éléments. Ceux qui semblent être les meilleurs éléments à utiliser dans votre exemple.
C'est seulement pour la sémantique partie de la question, bien que, depuis, je ne pense pas que ces éléments sont rendus le même comme un fieldset/legend. Pour ne pas mentionner que les navigateurs actuels ne supportent pas ces éléments pourtant, pour commencer.