我想在一个网站上集成一个时间线,并使用以下代码作为时间线的基础:http://bootsnipp.com/snippets/featured/timeline-responsive
我通过添加图片进一步扩展了代码片段。一开始,两张图片(在第一排)一切都很好,三张也可以(在前两张下面),但一旦出现了,后者突然出现在下面一排而不是第二排下的第三排。
html:
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<link rel="stylesheet" href="css/styles.css">
</head>
<li class="timeline-inverted">
<div class="timeline-panel">
<div class="timeline-heading">
<h4 class="timeline-title">1981-1990</h4>
</div>
<div class="timeline-body">
<p>Some text</p>
<p>Some more text</p>
</div>
</div><div class="timeline-picture-body">
<img class="timeline-images-left padding-bottom" src="http://placehold.it/250x250">
<img class="timeline-images-left padding-bottom" src="http://placehold.it/250x250">
<img class="timeline-images-left align" src="http://placehold.it/250x250">
<img class="timeline-images-left align" src="http://placehold.it/250x250">
</div>
</li>CSS:
/*body*/
body {
background-color: white;
}
.panel {
background-color: white;
color: black;
border-radius: 0;
text-align: justify;
font-size: 1.3em;
}
.panel-extra {
padding: 10px 0;
margin-top: 25px;
background-color: lightgrey;
border-radius: 0;
text-align: center;
font-size: 1.3em;
font-weight: bold;
}
.box {
padding-top: 30px;
padding-bottom: 30px;
border-bottom-width: 3px;
border-bottom-color: lightgrey;
border-bottom-style: solid;
}
/*Timeline*/
.timeline {
list-style: none;
padding: 20px 0 20px;
position: relative;
}
.timeline:before {
top: 0;
bottom: 0;
position: absolute;
content: " ";
width: 3px;
background-color: #eeeeee;
left: 50%;
margin-left: -1.5px;
}
.timeline > li {
margin-bottom: 20px;
position: relative;
}
.timeline > li:before,
.timeline > li:after {
content: " ";
display: table;
}
.timeline > li:after {
clear: both;
}
.timeline > li > .timeline-panel {
width: 46%;
float: left;
border: 1px solid #d4d4d4;
border-radius: 2px;
padding: 20px;
position: relative;
-webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
margin-bottom: 40px;
}
.timeline > li.timeline-inverted > .timeline-panel {
float: right;
}
.timeline > li.timeline-inverted > .timeline-panel:before {
border-left-width: 0;
border-right-width: 15px;
left: -15px;
right: auto;
}
.timeline > li.timeline-inverted > .timeline-panel:after {
border-left-width: 0;
border-right-width: 14px;
left: -14px;
right: auto;
}
.timeline > li.timeline-inverted > .timeline-picture-body: before {
position: absolute;
top: 26px;
right: -15px;
display: inline-block;
border-top: 15px solid transparent;
border-left: 15px solid #ccc;
border-right: 0 solid #ccc;
border-bottom: 15px solid transparent;
content: " ";
}
.timeline > li.timeline-inverted > .timeline-picture-body: after {
position: absolute;
top: 27px;
right: -14px;
display: inline-block;
border-top: 14px solid transparent;
border-left: 14px solid #fff;
border-right: 0 solid #fff;
border-bottom: 14px solid transparent;
content: " ";
}
.timeline > li.timeline-inverted > .timeline-picture-body {
float: left;
}
.timeline-title {
margin-top: 0;
color: inherit;
}
.timeline-body > p,
.timeline-body > ul {
margin-bottom: 0;
}
.timeline-body > p + p {
margin-top: 5px;
}
.timeline-images-right {
display: inline-block;
vertical-align: top;
width: 40%;
float: left;
padding: 0 10px;
}
.timeline-images-left {
display: inline-block;
vertical-align: top;
width: 40%;
float: right;
padding: 0 10px;
}
.padding-bottom {
padding-bottom: 10px;
}
.align {
display: block;
}
/*fonts*/
h1 {
text-align: center;
font-size: 3em;
color: black;
padding-top: 220px;
margin-top: 0;
}
.box h1 {
text-align: center;
font-size: 3em;
color: black;
padding-top: 30px;
margin-top: 0;
}
h2{
text-align: center;
font-size: 2.3em;
color: black;
}
p {
text-align: justify;
font-size: 1.3em;
}我已经尝试删除任何padding并更改display和vertical-alignment属性。
为了澄清,问题看起来是这样的:

如果你需要更多的代码部分,请告诉我,我也很乐意上传它们。
非常感谢您的帮助,提前谢谢您!
发布于 2016-06-10 17:38:04
这不是完美的解决方案,因为它不针对最初的浏览器问题,但通过这种方式,图片不再表现得奇怪:
我在行之间添加了一个container。它一定是一个bootstrap container,我尝试过的所有其他元素和类都不起作用。
<div class="timeline-picture-body">
<img class="timeline-images-left padding-bottom" src="img/tl7.jpg">
<img class="timeline-images-left padding-bottom" src="img/tl8.jpg">
<div class="container"></div>
<img class="timeline-images-left align" src="img/tl9.jpg">
<img class="timeline-images-left align" src="img/tl10.jpg">
</div>https://stackoverflow.com/questions/37619876
复制相似问题