我正在使用bootstrap 3.0.1版创建一个网格,当我在网格的行中添加一个边框时,我可以看到一起排在一起的边框,我得到一个更粗的边框。
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My Test</title>
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<style type="text/css">
body {
padding-top: 20px;
padding-bottom: 40px;
}
.container {
width: 420px;
}
div.row {
border: 1px solid;
}
</style>
</head>
<body>
<div class="container">
<div class="row heading">
<div class="col-md-12">Header</div>
</div>
<div class="row subheading">
<div class="col-md-12">Some text</div>
</div>
<div class="row footer">
<div class="col-md-12">Footer</div>
</div>
</div>
</body>
</html>
这就是I get 。 如何在没有相邻行添加边框的情况下使用边框?,即:我希望所有行都具有1px的边框。
谢谢
答案 0 :(得分:40)
如果元素是行的兄弟,则可以从顶部删除边框。 将其添加到css:
.row + .row {
border-top:0;
}
的链接
答案 1 :(得分:17)
这是一个解决方案:
div.row {
border: 1px solid;
border-bottom: 0px;
}
.container div.row:last-child {
border-bottom: 1px solid;
}
我不是100%它最有效率,但它有效:D
答案 2 :(得分:2)
在我的项目中,我将所有行分配给&#34; border&#34;我希望它显示更像是一个边界均匀的桌子。为每个子元素提供一个底部和右边的边框,每行的第一个元素左边框将使所有的框具有均匀的边框:
首先为所有行设置一个右边和底部的边框
.borders div{
border-right:1px solid #999;
border-bottom:1px solid #999;
}
接下来给出每个或左边框的第一个孩子
.borders div:first-child{
border-left:
1px solid #999;
}
最后确保清除其子元素的边框
.borders div > div{
border:0;
}
HTML:
<div class="row borders">
<div class="col-xs-5 col-md-2">Email</div>
<div class="col-xs-7 col-md-4">my@email.com</div>
<div class="col-xs-5 col-md-2">Phone</div>
<div class="col-xs-7 col-md-4">555-123-4567</div>
</div>
答案 3 :(得分:1)
您可以将1px边框添加到每行的边和底部。第一个值是顶部边框,第二个是右边框,第三个是底部边框,第四个是左边框。
div.row {
border: 0px 1px 1px 1px solid;
}