我有一个进度条。它运作良好,但我关注的是风格。显示一些行,我不知道为什么。在下面的屏幕截图中,您可以看到数字之间的线。有什么想法吗?
我的jsfiddle: JSFIDDLE
我的代码:
ol.progtrckr {
margin: 0;
padding: 0;
list-style-type: none;
}
ol.progtrckr li {
display: inline-block;
text-align: center;
line-height: 3em;
}
ol.progtrckr[data-progtrckr-steps="4"] li { width: 15%; }
ol.progtrckr li.progtrckr-done {
color: black;
padding-right: 12px;
border-bottom: 4px solid green;
}
ol.progtrckr li.progtrckr-todo {
color: silver;
padding-right: 12px;
border-bottom: 4px solid silver;
}
ol.progtrckr li:after {
content: "\00a0\00a0";
}
ol.progtrckr li:before {
position: relative;
bottom: -2.5em;
float: left;
left: 50%;
line-height: 1em;
}
ol.progtrckr li.progtrckr-done:before {
content: "\2713";
color: white;
background-color: green;
height: 1.2em;
width: 1.2em;
line-height: 1.2em;
border: none;
border-radius: 1.2em;
}
ol.progtrckr li.progtrckr-todo:before {
content: "\039F";
color: silver;
background-color: white;
font-size: 1.5em;
bottom: -1.6em;
}
<ol class="progtrckr" data-progtrckr-steps="">
<a href="#" >
<li class="progtrckr-done ">1 </li> </a>
<a href="#">
<li class="progtrckr-done">2 </li> </a>
<a href="#">
<li class="progtrckr-done">3 </li> </a>
<a href="#">
<li class="progtrckr-todo">4 </li> </a>
</ol>
答案 0 :(得分:3)
请使用text-decoration:none for anchor with class“progtrckr”此行将消失或在样式表文件中添加到css下面 -
ol.progtrckr>a {
text-decoration:none;
}
答案 1 :(得分:2)
您使用“display:inline-block”表示“ol.progtrckr li”,因此这些元素的行为类似于内联元素,但它们具有空格。所以你应该使用“float:left”而不是“display:inline-block”。您还应该为“ol”元素使用“clearfix”。例如:将“.clerfix”类添加到“ol”元素并使用以下css:
.clearfix:after {
content: ".";3
display: block;
height: 0;
clear: both;
visibility: hidden;
}
答案 2 :(得分:1)
你必须把你的&#34; li&#34;你的&#34; a&#34;之前的标签标签,像这样:
<ol class="progtrckr" data-progtrckr-steps="">
<li class="progtrckr-done"><a href="#">1</a></li>
<li class="progtrckr-done"><a href="#">2</a></li>
<li class="progtrckr-done"><a href="#">3</a></li>
<li class="progtrckr-done"><a href="#">4</a></li>
</ol>
答案 3 :(得分:0)
您正在链接整个<li>
元素,而您应该仅链接其中的值:
<ol class="progtrckr" data-progtrckr-steps="">
<li class="progtrckr-done "><a href="#" >1</a></li>
<li class="progtrckr-done "><a href="#" >2</a></li>
<li class="progtrckr-done "><a href="#" >3</a></li>
<li class="progtrckr-done "><a href="#" >4</a></li>
</ol>
以下是更新后的JSFiddle我在此处添加了padding:0
:
ol.progtrckr li.progtrckr-done {
color: black;
padding-right: 12px;
border-bottom: 4px solid green;
padding: 0;
}
答案 4 :(得分:0)
它是<a>
元素的默认文本修饰。
使用:
a{
text-decoration: none;
}
答案 5 :(得分:0)
添加
a:link {
text-decoration: none;
}
(许多浏览器默认为链接加下划线)
添加:或者,如果您希望在常规链接中保留下划线,请改为编写,为安全起见,请包含其他链接状态:
.progtrckr-done a:link,
.progtrckr-done a:hover,
.progtrckr-done a:active,
.progtrckr-done a:visited {
text-decoration: none;
}
答案 6 :(得分:0)
此处更新了小提琴:https://jsfiddle.net/aLwgrym8/63/
您只需要在锚元素中添加text-decoration:none:
ol.progtrckr > a {
text-decoration: none;
}
或者,你可以在<li>
内移动锚元素,而不是你当前正在做的另一种方式。这里更新了小提琴:https://jsfiddle.net/aLwgrym8/65/
HTML:
<ol class="progtrckr" data-progtrckr-steps="">
<li class="progtrckr-done "><a href="#" >1</a></li>
<li class="progtrckr-done"><a href="#">2</a></li>
<li class="progtrckr-done"><a href="#">3</a></li>
<li class="progtrckr-todo"><a href="#">4</a></li>
</ol>
<强> CSS:强>
ol.progtrckr li > a {
text-decoration: none;
color: #000;
}
答案 7 :(得分:0)
请注意,您的结束</li>
代码与结束</a>
代码之间有空格。
<li class="progtrckr-done">2 </li> </a>
如果删除这些内容,则根本不需要执行上述所有操作,因为链接中没有任何下划线。