7

谷歌搜索和浏览 SO 都没有帮助我 - 希望这里有人可以解决这个问题:

我有以下html:

<ul>
<li>ABC 1</li>
<li>ABC 2</li>
<li>ABC 3</li>
<li>ABC 4</li>
</ul>

和CSS

ul {list-style-image:url(../img/hook.png);}
li {vertical-align:middle;color:#FFFFFF;font-size:16px;text-shadow: 0em 0.13em 0.13em #2A2A2A;font-family:Helvetica,Arial,Sans-Serif;font-weight:normal;}

“hook.png”图像是 32x35 像素 - 但每当我创建列表项时,文本(例如 ABC ...)将始终显示在图像下方。尝试了 line-height 和那些 100% 的东西 - 但都没有成功。

任何快速帮助:/?

4

4 回答 4

8

尝试一些变化

ul{
    background-image: url(../img/hook.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;
}

显然,该职位不太可能满足您的需求,但我会说,摆弄这种方法是您最好的选择。

于 2012-11-19T14:00:09.000 回答
1
<html>
<head>
<style>
ul
{
    list-style-image:none;
}
li
{
    color:#FFFFFF;
    font-size:16px;
    text-shadow: 0em 0.13em 0.13em #2A2A2A;
    font-family:Helvetica,Arial,Sans-Serif;
    font-weight:normal;
    line-height:35px;

    margin-bottom:5px;
    padding-left: 36px;
    background-image: url('../img/hook.png');
    background-repeat:no-repeat;
}
</style>
</head>
<body>
<ul>
<li>ABC 1</li>
<li>ABC 2</li>
<li>ABC 3</li>
<li>ABC 4</li>
</ul>
</body>
</html>

从未见过我们的任何设计师在为列表实现自定义图标时尝试使用列表样式图像,我想这就是原因:)

于 2012-11-19T14:17:16.997 回答
0

如果我理解您的问题是文本似乎低于基线?

尝试为您的文本设置 beelow 属性:

填充底部

于 2012-11-19T12:57:49.010 回答
0

我想出了类似的东西,这可能会为你节省一些时间 HTML:

<ul class="rozcestnik">
  <li><a href="#" title="1">1</a></li>
  <li><a href="#" title="2">2</a></li>
  <li><a href="#" title="3">3</a></li>
</ul>

CSS:

.rozcestnik {
    list-style-type: none;
    padding: 0;
    margin: 2.5em 2em 0;
}

.rozcestnik li:before {
    background: url("icon.png") no-repeat scroll 50% 50% transparent;
    content: " ";
    display: block;
    height: 20px;
    left: -20px;
    position: absolute;
    top: 0;
    width: 20px;
}
.rozcestnik li {
    position: relative;
    padding-bottom: 5px;
    padding-left: 5px;
}

根据自定义列表图像,您可能只需要自定义顶部和大小“:before”和“li”的填充。

它适用于所有主要浏览器和应用程序 IE8 等。

于 2013-09-05T08:49:42.220 回答