我有两列框。有左右两边。由于某种原因,右侧并没有一直 float 到容器的末端。我没有任何余地可以阻止它这样做,所以我不确定为什么它没有完全结束。
你可以在 fiddle 里看到:
如果您查看上面写着“单击服务以了解更多信息”的小文本/注释,它会一直 float 到右侧并位于容器的末端。右侧标签需要与那些标签一样远。
另外,旁注。你可以看到我有一个悬停效果,从左到右拉出一个新的背景颜色。我不确定为什么背景颜色不会像滑动时那样过渡。我有主要元素的转换代码。
有谁知道为什么这两件事不起作用?
#service-tabs {
width: 100%;
padding: 100px 0;
height: auto;
background: #F0F0F0;
overflow: auto;
}
#service-tabs-container {
width: 70%;
margin: 0 auto;
text-align: center;
}
#service-tabs-container-title {
color: #404040;
font-size: 1.3em;
margin-bottom: 15px;
text-align: left;
}
#service-tabs-container-title2 {
color: #578570;
font-size: 2.8em;
margin-bottom: 20px;
line-height: 1.4em;
text-align: left;
}
#service-tabs-container-note {
margin: 40px 0;
font-size: .7em;
text-align: right;
}
#service-tabs-left {
float: left;
width: 50%;
}
#service-tabs-right {
float: right;
width: 50%;
}
.service-tab-block {
position: relative;
font-size: 1.6em;
padding: 3.5em 20px;
/*padding: 1em 25px;*/
width: 85%;
text-align: center;
color: #FFF;
display: block;
margin: 30px 0;
cursor: pointer;
border: none;
background-image: linear-gradient(to right, #000 50%, #578570 50%);
background-size: 201% 100%;
background-repeat: no-repeat;
background-position: bottom right;
transition:width 0.2s ease;
-webkit-transition:width 0.2s ease;
}
.service-tab-block.active {
background: #000;
color: #FFF;
}
.service-tab-block:hover {
-webkit-transition: all 0.2s ease-in;
transition: all 0.2s ease-in;
background-position: bottom left;
color: #FFF;
border: none;
}
<div id="service-tabs">
<div id="service-tabs-container">
<div id="service-tabs-container-title">WHAT WE OFFER</div>
<div id="service-tabs-container-title2">Our Services</div>
<div id="service-tabs-container-note">* Click a service to find out more.</div>
<div id="service-tabs-left">
<h1 class="service-tab-block" id="service_tab1">DEMOLITION</h1>
<h1 class="service-tab-block" id="service_tab2">CONCRETE CRUSHING</h1>
<h1 class="service-tab-block" id="service_tab3">SCRAP METAL RECYCLING</h1>
</div>
<div id="service-tabs-right">
<h1 class="service-tab-block" id="service_tab4">ASSET RECOVERY</h1>
<h1 class="service-tab-block" id="service_tab5">FOUNDATION REMOVAL</h1>
<h1 class="service-tab-block" id="service_tab6">SITE WORK</h1>
</div>
</div>
</div>
最佳答案
Updated fiddle (为左/右浮动着色,以便您可以看到发生了什么)
因为你的 CSS 规则中的这两个属性
.service-tab-block {
padding: 3.5em 20px;
width: 85%;
我更改/添加了它
.service-tab-block {
width: calc(100% - 60px); /* compensate for the padding and margin */
....
}
#service-tabs-right .service-tab-block {
margin-left: 20px;
}
对于过渡,改变
transition:width 0.2s ease;
-webkit-transition:width 0.2s ease;
到
transition:all 0.2s ease;
-webkit-transition:all 0.2s ease;
关于html - 向右浮动元素不完全向右浮动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37866599/