Я хочу отформатировать список определений в HTML, как если бы это была таблица с th
в столбце и td
в другом, с фоном, чередующимся для каждой строки (хотя фон для dt
и другой для dd
также подходит для проблемы), поэтому у меня есть этот CSS:
dl {
font-family: Verdana, Geneva, sans-serif;
font-size: 0.6em;
overflow: hidden;
width: 200px;;
}
dl dt {
font-weight: bold;
float: left;
clear: left;
padding-right: 1%;
width: 48%;
}
dl dt:nth-of-type(odd),
dl dd:nth-of-type(odd) {
background-color: #EEE;
}
dl dt:nth-of-type(even),
dl dd:nth-of-type(even) {
background-color: #DDD;
}
dl dd {
float: left;
width: 50%;
padding-left: 1%;
margin-left: 0;
}
Пример HTML:
<dl>
<dt>Key 1</dt>
<dd>Value 1</dd>
<dt>Very very very long key 2</dt>
<dd>Value 2</dd>
<dt>Key 3</dt>
<dd>Value 3 with<br /> line breaks</dd>
<dt>Key 4</dt>
<dd>Value 4</dd>
</dl>
Проблема в том, что из-за возможного различия в высоте в списке появляются «дыры» без фона:
Есть ли способ это исправить?