均匀分配李项目

kri*_*top 10 html css html5 css3

希望这是自我解释:

HTML:

<ul class="steps">
<li class="step1 first">
    <div class="icon basket"></div>
    1.Warenkorb
</li>
<li class="step2">
    <div class="icon registration"></div>
    2.Adresse
</li>
<li class="step3">
    <div class="icon payment"></div>
    3.Zahlungsart
</li>
<li class="step4">
    <div class="icon order"></div>
    4.Bestätigen
</li>
<li class="step5 last">
    <div class="icon thankyou last"></div>
    5.Danke
</li>
<div style="clear:both"></div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.steps {
width:100%;
list-style-type: none;
padding:0;
margin:0 auto;
background:url(http://tnsdev.cloudapp.net/dev/steps_slice.png) repeat-x;
 }

 .steps li {
width:20%;
float:left;

}

.steps li .icon {
background:url(http://tnsdev.cloudapp.net/dev/steps_icon.png) no-repeat;
height:44px;
width:44px;
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/HYYwn/1/

我如何才能实现气泡之间的距离完全相同,并且step5的气泡位于最右边?我约束有5个不同的li并使用%,所以它保持响应.

我已经暂时无法解决这个问题了!

编辑:

结果应该是这样的

 O--O--O--O--O 
Run Code Online (Sandbox Code Playgroud)

而不是喜欢

--O--O--O--O--O  
Run Code Online (Sandbox Code Playgroud)

要么

O--O--O--O--O--  
Run Code Online (Sandbox Code Playgroud)

要么

--O--O--O--O--O--
Run Code Online (Sandbox Code Playgroud)

Mar*_*det 7

这是使用它的一种方法text-align: justify.

这种方法的优点是圆/气泡图案均匀分布,您还可以控制下方标签的对齐.

首先需要将标签包装在容器中,我使用<p>标签,并添加一个终止<li>元素,相当于清除元素.

<ul class="steps">
    <li class="step1 first">
        <div class="icon basket"></div>
        <p>1.Warenkorb</p>
    </li>
    <li class="step2">
        <div class="icon registration"></div>
        <p>2.Adresse</p>
    </li>
    <li class="step3">
        <div class="icon payment"></div>
        <p>3.Zahlungsart</p>
    </li>
    <li class="step4">
        <div class="icon order"></div>
        <p>4.Bestätigen</p>
    </li>
    <li class="step5 last">
        <div class="icon thankyou last"></div>
        <p>5.Danke</p>
    </li>
    <li class="filler"></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

对于CSS:

.steps {
    width:100%;
    list-style-type: none;
    padding:0;
    margin:0 auto;
    background:url(http://tnsdev.cloudapp.net/dev/steps_slice.png) repeat-x;
    text-align: justify;
    line-height: 0;
}
.steps li {
    width: auto;
    display: inline-block;
    margin: 0;
    padding: 0;
    line-height: 1.5;
    position: relative;
    text-align: center;
}
.steps li .icon {
    background:url(http://tnsdev.cloudapp.net/dev/steps_icon.png) top center no-repeat;
    height:44px;
    width:44px;
}
.steps li p {
    position: absolute;
    width: 100px;
    top: 50px;
    left: -22px;
    margin: 0;
}
.steps li.first p {
    text-align: left;
    left: 0;
}
.steps li.last p {
    text-align: right;
    left: auto;
    right: 0;
}
.steps li.filler {
    width: 100%;
    height: 0;
    font-size: 0;
    vertical-align: top;
}
Run Code Online (Sandbox Code Playgroud)

请参阅jsFiddle的演示

首先,我text-align: justify在父容器上使用均匀分布的li元素是缩小的内嵌块以适合方形.icon元素.

.filler线强制新的100%宽度线,允许文本对齐工作.我设置vertical-align: top(和line-height: 0在父母中)去掉一个由填充元素创建的空间的孤儿.

然后,我使用绝对定位将标签从流中取出,并调整第一个和最后一个列表项的文本对齐,并使用负边距定位它们以使标签居中.

一个限制是为标签指定了宽度,因此您应该根据需要向父容器添加最小宽度.

你有足够的空间来根据需要调整东西.