列出垂直对齐文本中间与列表样式图像

r3p*_*ica 13 html css list

我试图垂直对齐列表中的一些文本并遇到问题.首先,你需要知道我已经用自定义图像替换了list-style-image.这是我的CSS:

ul.cogs li { 
    list-style-image: url(Images/li_cog.png); 
    height: 50px; 
    line-height: 50px; 
}
Run Code Online (Sandbox Code Playgroud)

我试图看看是否有办法让文本与中间对齐.我试过了:

vertical-align:middle;

这没用,所以我试过:

line-height:50px;

这也没用,所以我试过:

显示:表格

哪个有效,但图像从列表项中消失了....

有没有人知道如何使这个工作?

Mr.*_*ien 23

使用问题list-style-image是,你不能与文本对齐,做的最好的事情就是用background-imageli元素,然后用padding-left你的li元素.

越野车演示 (您面临的问题)

演示

ul li {
    background-image: url(http://png-5.findicons.com/files/icons/2222/gloss_basic/32/bullet_black.png);
    background-repeat: no-repeat;
    line-height: 30px;
    padding-left: 30px;
}

ul {
    margin: 50px;
}
Run Code Online (Sandbox Code Playgroud)

  • 如果您使用“min-height”而不是“line-height”,那么当“<li>”换行到下一行时,文本之间的行间距将与页面上的其他文本保持相同。但是当它是单行时,并且项目符号图像大于行高,它不会与下一个“<li>”中的项目符号重叠 (2认同)

Fan*_*nky 8

你可以有

<li><span style="top:-5px; position:relative;">Text shifted 5px upper</span></li>
Run Code Online (Sandbox Code Playgroud)