我想为我从markdown生成的列表中设置样式。生成的html代码是这样的:
ul li {
list-style-type: none;
background: white;
margin: 4px 0;
padding-top: 4px;
padding-left: 24px;
border-left: 12px solid #5EAADF;
background: #F6F8FA;
}
ul {
padding-inline-start: 0;
}
<ul>
<li>Item 1
<ul>
<li>Item 1.1
<ul>
<li>Item 1.1.1</li>
</ul>
</li>
<li>Item 1.2
<ul>
<li>Item 1.2.1
<ul>
<li>Item 1.2.1.1</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
我想在每行前面添加一个彩色条。我只是设法这样设计它。但是我想要的是这样的:
生成的html代码有可能吗?
答案 0 :(得分:1)
可以用伪代码完成。
但是,如果不进行任何HTML更改,我认为您不会完美。如果将<li>
元素的文本包装在<p>
或<span>
ul li {
list-style-type: none;
background: white;
margin: 4px 0;
padding-top: 4px;
padding-left: 24px;
background: #F6F8FA;
position: relative;
line-height: 20px;
/* Added */
}
ul li:before {
content: "";
position: absolute;
top: 0px;
left: 0;
height: 24px; /* line-height + padding-top */
width: 12px; /* original border width */
background-color: #5EAADF;
}
ul {
padding-inline-start: 0;
/*
Experimental technology, limited browser support
See: https://developer.mozilla.org/en-US/docs/Web/CSS/padding-inline-start
*/
}
<ul>
<li>Item 1
<ul>
<li>Item 1.1
<ul>
<li>Item 1.1.1</li>
</ul>
</li>
<li>Item 1.2
<ul>
<li>Item 1.2.1
<ul>
<li>Item 1.2.1.1</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>