body { padding:20px 50px; background-color:gray; } .accordion { position:relative; background-color:white; } .accordion > input { display:block; margin:0 0; width:100%; height:30px; position:relative; cursor:pointer; opacity:0; filter:alpha(opacity=0); } .accordion > label { display:block; font:bold 12px/30px Arial,Sans-Serif; background-color:black; color:white; margin:-30px 0 0 0; padding:0 15px; } .accordion > div { padding:10px 15px; display:none; } .accordion > input:checked + label { background-color:darkblue; } .accordion > input:checked + label + div { display:block; }