I want to create a description list in which each term and description pair appear in one single line, but having those “lines” with a hanging indent in case they wrap.
Here’s what I want visually but using p
elements instead:
p {
margin: 0 0 0 2em;
text-indent: -2em
}
<p><b>H:</b> Himenaeos</p>
<p><b>U:</b> Ullamcorper</p>
<p><b>Lorem Ipsum pulvinar ullamcorper nulla facilisi integer lacinia massa cras sed risus:</b> Lectus orbi in dui quis est pulvinar ullamcorper nulla facilisi integer lacinia sollicitudin massa cras metus sed aliquet risus a tortor id quam.</p>
<p><b>Vestibulum sed aliquet risus a tortor integer id quam morbi mi quisque nisl felis venenatis tristique dignissim in ultrices sit amet augue proin sodales libero eget ante nulla quam aenean laoreet:</b> Vestibulum risus a tortor integer</p>
<p><b>Q:</b> Quisque</p>
So far I have managed to display each pair inline, but not luck with the hanging indent.
My current code:
dt,
dd {
display: inline;
}
dt {
font-weight: bold;
}
dd {
margin: 0;
padding: 0
}
dt::before {
content: "";
display: block;
}
<dl>
<dt>H:</dt>
<dd>Himenaeos</dd>
<dt>U:</dt>
<dd>Ullamcorper</dd>
<dt>Lorem Ipsum pulvinar ullamcorper nulla facilisi integer lacinia massa cras sed risus:</dt>
<dd>Lectus orbi in dui quis est pulvinar ullamcorper nulla facilisi integer lacinia sollicitudin massa cras metus sed aliquet risus a tortor id quam.</dd>
<dt>Vestibulum sed aliquet risus a tortor integer id quam morbi mi quisque nisl felis venenatis tristique dignissim in ultrices sit amet augue proin sodales libero eget ante nulla quam aenean laoreet:</dt>
<dd>Vestibulum risus a tortor integer</dd>
<dt>Q:</dt>
<dd>Quisque</dd>
</dl>