对于我的网页,我使用单选按钮在我的网页顶部制作内容标签。我希望标签在屏幕中居中。我尝试使用display:flex和text-align:justify但它没有用。有没有一种简单的方法来集中单选按钮?任何帮助将不胜感激。
这是HTML
<body>
<div class="allTabs">
<div class="tab">
<input type="radio" id="tab-1" name="tab-group-1" checked>
<label for="tab-1">Tab One</label>
<div class="content">
stuff 1
</div>
</div>
<div class="tab">
<input type="radio" id="tab-2" name="tab-group-1">
<label for="tab-2">Tab Two</label>
<div class="content">
stuff 2
</div>
</div>
<div class="tab">
<input type="radio" id="tab-3" name="tab-group-1">
<label for="tab-3">Tab Three</label>
<div class="content">
stuff 3
</div>
</div>
这是CSS
.tabs {
min-height: 200px; /* This part sucks */
clear: both;
}
.tab {
float: left;
}
.tab label {
background: white;
padding: 10px;
border: 1px solid #ccc;
margin-left: -1px;
position: relative;
left: 1px;
}
.tab [type=radio] {
display: none;
}
.content {
position: absolute;
top: 28px;
left: 0;
background: white;
right: 0;
bottom: 0;
padding: 20px;
border-top: 4px solid #DADEDE;
margin-top: 4px;
}
[type=radio]:checked ~ label {
background: white;
padding-bottom: 0px;
border-bottom: 4px solid blue;
margin-bottom: 5px;
z-index: 2;
}
[type=radio]:checked ~ label ~ .content {
z-index: 1;
}
这是JSFiddle https://jsfiddle.net/mk8r6kL0/
答案 0 :(得分:4)
从float:left;
的CSS中移除.tab
并添加display:inline-block;
另外,添加
.allTabs {
text-align: center;
}
到你的CSS
所以,完整的CSS将如下所示
.allTabs {
text-align: center;
}
.tabs {
min-height: 200px;
clear: both;
}
.tab {
display: inline-block;
}
.tab label {
background: white;
padding: 10px;
border: 1px solid #ccc;
margin-left: -1px;
position: relative;
left: 1px;
}
.tab[type=radio] {
display: none;
}
.content {
position: absolute;
top: 28px;
left: 0;
background: white;
right: 0;
bottom: 0;
padding: 20px;
border-top: 4px solid #DADEDE;
margin-top: 4px;
}
[type=radio]:checked ~ label {
background: white;
padding-bottom: 0px;
border-bottom: 4px solid blue;
margin-bottom: 5px;
z-index: 2;
}
[type=radio]:checked ~ label ~ .content {
z-index: 1;
}
答案 1 :(得分:2)