If you want to style a nested list, you should use a list for the structure.
Counter and list-style-type are here to help you style it the way you want.
a quick example alike your screenshot:
ol ol {
list-style-type: lower-alpha;
}
ol ol ol {
list-style-type: lower-roman;
}
ol[class] {
counter-reset: li;
width: 600px;
margin: auto;
text-align: justify;
}
ol[class]>li {
counter-increment: li;
}
ol[class]>li>ol>li>ol>li:before {
content: counter(li, lower-roman)'.';
position: absolute;
margin-left: -2em;
}
<ol class>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est.
Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
</ol>
</li>
</ol>
</li>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est.
Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
</ol>
</li>
</ol>
</li>
</ol>
Notes, that you are better to use counter
from the second level instead and reset to none
list-style-type
. The demo is here to show you the use of list-style-type and how to use a counter turned into lower-roman
.
Example only with counter CSS incrementing sublevels such as 1., 1.1 , 1.1.1, 1.2, 1.2.1 ....
ol {
list-style-type: none;
}
ol[class] {
counter-reset: li-0;
width: 600px;
margin: auto;
text-align: justify;
}
ol ol {
counter-reset: li-1;
}
ol ol ol {
counter-reset: li-2;
}
ol[class] > li {
counter-increment: li-0;
}
ol[class] > li > ol > li {
counter-increment: li-1;
}
ol[class] > li > ol > li > ol > li {
counter-increment: li-2;
}
li {
position:relative;
}
li:before {
margin-right:1em;
position:absolute;
right:100%;
}
ol[class] > li:before {
content: counter(li-0)".";
}
ol[class] > li> ol > li:before {
content: counter(li-0)"." counter(li-1);
}
ol[class] > li > ol li > ol > li:before {
content: counter(li-0)"." counter(li-1)"."counter(li-2);
}
ol {
color: tomato;
}
ol li p {
color: orange;
}
ol ol {
color: turquoise;
}
ol ol li p {
color: blue;
}
ol ol ol {
color: gray;
}
ol ol ol li p {
color: lightgray;
text-shadow: 0 0 0 black;
}
<ol class>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est.
Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
</ol>
</li>
</ol>
</li>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est.
Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
<ol>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
<li>
<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae
est. Mauris placerat eleifend leo.</p>
</li>
</ol>
</li>
</ol>
</li>
</ol>
Here is a codepen to play with and test other settings : https://codepen.io/gc-nomade/pen/VBLMjK