David Aurelio: Problem mit Zeilenumbruch

Beitrag lesen

Hallo Kalle,

1.) Warum so umständlich?
Das ginge doch auch ohne das div zum clearen:

  
.row  {border-bottom:1px solid #ccc}  
.sp01 {width:10em; float:left}  
.sp02 {margin-left:10em;}  

  
<div class=row>  
  <div class=sp01>Name:</div>  
  <div class=sp02>Kalle</div>  
</div>  
<div class=row>  
  <div class=sp01>Bundesland:</div>  
  <div class=sp02>Hessen</div>  
</div>  

Nun das Problem: Können Blinde den Zeilenwechsel bei diesem Design eigentlich fühlen?

Wenn Du Dir schon Gedanken um Barrierefreiheit machst, solltest Du Div-Suppen vermeiden und Deine Gedanken um das Thema sinnvolles Markup erweitern.

Dein Beispiel sieht nach einer Definitionsliste aus. Warum nicht eine solche benutzen?

  
<dl>  
    <dt>Name:</dt>  
    <dd>Kalle</dd>  
    <dt>Bundesland:</dt>  
    <dd>Hessen</dd>  
</dl>  

Die kann man auch prima formatieren, z.B. so:

  
dt {  
    clear: both; /* cleart vorangegangene dts */  
    float: left;  
    width: 10em;  
}  
  
dd {  
    border-bottom: 1px solid #ccc;  
    margin-left: 10em;  
}  

Und, für Fortgeschrittene, damit dts, die länger sind als die folgenden dds oder am Ende alleine stehen, nicht unten über die Liste hinausragen:

  
dl {  
    *height: 1px; /* Für den IE. Wird von anderen Browsern nicht gesehen,  
                     Macht, das die Box auch um gefloatete Elemente herum erweitert wird. */  
}  
  
dl:after {  
    content: "."; /* Für andere Browser */  
    display: block;  
    height: 0;  
    clear: both;  
    visibility: hidden;  
}