CSS3 Accordion (No Javascript) - Horizontal

Pure HTML/CSS3 accordion using absolutely no javascript. This version uses horizontal accordion type allowing one panels to be visible at a time.

HTML

<div class="accordion horizontal">
    <ul>
        <li>
            <input type="radio" id="vert-1" name="vert-accordion" checked="checked" />
            <label for="vert-1">Thema&nbsp;1</label>
            <div class="content">
                 <h3>Wie...</h3>
                <p>Klick hier, damit du die Information siehst</p>
            </div>

			</a>
        </li>
        <li>
            <input type="radio" id="vert-2" name="vert-accordion" />
            <label for="vert-2">Thema&nbsp;2</label>
            <div class="content">
                <h3>Wie...</h3>
                <p>Klick hier, damit du die Erklärung siehst</p>
                 <a href="http://jsfiddle.net/dirkk0/kctub50f/47/show/"
            target=_blank></a>
            </div>
        </li>
        <li>
            <input type="radio" id="vert-3" name="vert-accordion" />
            <label for="vert-3">Thema&nbsp;3</label>
            <div class="content">
                <h3>Klar?</h3>
                <p>Für neugierige Schüler:</p>
                <p>Wie machen wir den Stundenplan?</p>
                <p>Wow! Hier können Sie angucken.</p>
            </div>
        </li>
        <li>
            <input type="radio" id="vert-4" name="vert-accordion" />
            <label for="vert-4">Thema&nbsp;4</label>
            <div class="content">
                <h3>Nah! Du bist ganz bereit?</h3>
                <p>Na los!!!</p>
                <p>Gerade nach deinem Stundenplan...</p>
            </div>
            <a href="http://jsfiddle.net/dirkk0/6xbysnjs/18/show/">
            </a>
        </li>
    </ul>
</div>

CSS

.accordion {
    font-family:Arial, Helvetica, sans-serif; 
    margin:0 auto;
    font-size:14px;
    border:1px solid #542437;
    border-radius:10px;
    width:600px;
    padding:10px;
    background:#fff;
}
.accordion ul {
    list-style:none;
    margin:0;
    padding:0;    
}
.accordion li {
    margin:0;
    padding:0;
}
.accordion [type=radio], .accordion [type=checkbox] {
    display:none;
}
.accordion label {
    display:block;
    font-size:16px;
    line-height:16px;
    background:#D95B43;
    border:1px solid #542437;
    color:#542437;
    text-shadow:1px 1px 1px rgba(255,255,255,0.3);
    font-weight:700;
    cursor:pointer;
    text-transform:uppercase;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
}
.accordion ul li label:hover, .accordion [type=radio]:checked ~ label, .accordion [type=checkbox]:checked ~ label {
    background:#C02942;
    color:#FFF;
    text-shadow:1px 1px 1px rgba(0,0,0,0.5)
}
.accordion .content {
    padding:0 10px;
    overflow:hidden;
    border:1px solid #fff; /* Make the border match the background so it fades in nicely */
    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
}
.accordion p {
    color:#333;
    margin:0 0 10px;
}
.accordion h3 {
    color:#542437;
    padding:0;
    margin:10px 0;
}

/* Horizontal */
/* Unfortunately fixed heights need to be set for this */
.horizontal {
    overflow:hidden;
    height:300px;
}
.horizontal ul li {
    float:left;
    margin:0 1px 0 0;
}
.horizontal ul li label {
    word-wrap:break-word;
    letter-spacing:10px;
    text-align:center;
    height:280px;
    padding:10px 0 10px 5px;
    width:25px;
    float:left;
}
.horizontal ul li .content {
    height:300px;
    padding:0;
    display:inline-block; /* Makes its work in FF */
    visibility:hidden; /* Chrome bug cant show width < 1px for some reason so need to toggle visibility */
    width:1px;
    border-left:0;
}
.horizontal [type=radio]:checked ~ label...