边框底部无法正常工作

border-bottom not working correctly

我有一个奇怪的问题,我有 3 个选项卡菜单项,它们有文本,在我设置边框底部的文本之后,它在第一个菜单选项卡上工作正常,但对于其他 2 个,它出现在另一个边框上 -底部,但是当我将代码放入 Jsfiddle 时它工作正常。这是我的代码 Jsfiddle

HTML

<div class="container">
        <div class="row">
            <div class="col-md-12">
                <header>
                    <a href="#"><h1 class="title">Title</a><a href="#" id="show-about-btn">&#9650;</a></h1>
                </header>
                <div class="menu-nav">  
                    <nav class="subnav">
                        <ul class="tabs">

CSS

body {
    background-color: #E5E5E5;

}

a:link{
    text-decoration:none !important;
}

.title{
    margin-top: 150px;
    font-size: 450%;
    font-weight: bold;
    letter-spacing: 3px;
    margin-left: 10px;
    border-bottom: 1px solid #ccc;
}

.title a,
.title a:visited,
.title a:link {
    color: black;
}


.title a:hover,
.title a:link {
    text-decoration: none;
    color: #2bb673;
}

#show-about-btn {
    font-size: 40%;
    margin-left: 10px;
    color: #2bb673;
}


/*Navigation*/

.subnav {
    height: 80px;
    line-height: 3em;
    border-bottom: 1px solid #ccc;
}

.subnav li {
    list-style: none;
    float: left;
    padding: 1px 40px 1px 1px;
}

.subnav ul li a.active {
    padding: 6px;
    background-color: #2bb673;
    color: #fff;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -o-border-radius: 20px;
    border-radius: 20px;
    text-decoration: none;
}

.subnav li a {
    color: #2bb673;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    position: relative;
    right: 30px;
}

.subnav a:hover {
    text-decoration: none;
    color: black;
    -webkit-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    transition: all .3s ease-in;
}

article {
    font-size: 16px;
    font-family: arial, sans-serif;
    display: block;
    border-bottom: 1px solid #ccc;
}

.tab {
    position: relative;
    top: 12px;
    font-size: 12px;
}

.menu-nav {
    display: none;
}

.tab p,h5{
    padding-bottom: 25px;
}

.tab h4 {
    margin-top: 5px;
    font-weight: bold;
}

.tab h5 {
    font-size:18px;
}

.tab img {
    margin-left: 50px;
    margin-bottom: 10px;
}

/*Content*/

.our-work a {
    font-family: "Literaturnaya Italic";
    font-style: italic;
    font-weight: 400;
    font-size: 46px;
    margin-top: 5px;
    color: black;
}

首先屏幕边框在正确的位置

在第二个选项卡上,相同的边框出现在另一个选项卡上

正如@pankajPhartiyal 所说,您的问题是您有多种样式。

从样式部分 article{}border-bottom: 1px solid #ccc; 中删除此行

Demo

只需将 class 行添加到 #about_us 或更好地将 #about_us 下的代码包装在 <div class="row">..content under #about_us..</div> 中。 Bootstrap 网格系统 class 像 .col-md-3 应该始终包裹在 .row 内以避免 CSS float problem

机制

网格 class 以 .col- 开头的网格使用 float:left 一个接一个地对齐并保持精确的尺寸。所以它的父级将失去所有高度(a classic CSS float problem)。现在添加 class row 通过添加 clearfix 彻底解决了这个问题,因为它添加了一个带有 clear:both.

的伪元素
.row:after {
content: " ";
clear:both;
display:block;
}