"Timeline 2.1 with images and responsive"
Bootstrap 3.1.0 Snippet by SrPatinhas

<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css"> <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script> <script src="//code.jquery.com/jquery-1.11.1.min.js"></script> <!------ Include the above in your HEAD tag ----------> <div class="container"> <div class="page-header text-center"> <h1 id="timeline">Timeline 2.1</h1> </div> <ul class="timeline"> <li> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-heading"> <img class="img-responsive" src="http://lorempixel.com/1600/500/sports/2" /> </div> <div class="timeline-body"> <p>Mussum ipsum cacilds, vidis litro abertis. Consetis adipiscings elitis. Pra lá , depois divoltis porris, paradis. Paisis, filhis, espiritis santis. Mé faiz elementum girarzis, nisi eros vermeio, in elementis mé pra quem é amistosis quis leo. Manduma pindureta quium dia nois paga. Sapien in monti palavris qui num significa nadis i pareci latim. Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.</p> </div> <div class="timeline-footer"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li class="timeline-inverted"> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record invert" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-heading"> <img class="img-responsive" src="http://lorempixel.com/1600/500/sports/2" /> </div> <div class="timeline-body"> <p>Mussum ipsum cacilds, vidis litro abertis. Consetis adipiscings elitis. Pra lá , depois divoltis porris, paradis. Paisis, filhis, espiritis santis. Mé faiz elementum girarzis, nisi eros vermeio, in elementis mé pra quem é amistosis quis leo. Manduma pindureta quium dia nois paga. Sapien in monti palavris qui num significa nadis i pareci latim. Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.</p> </div> <div class="timeline-footer"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-heading"> <img class="img-responsive" src="http://lorempixel.com/1600/500/sports/2" /> </div> <div class="timeline-body"> <p>Mussum ipsum cacilds, vidis litro abertis. Consetis adipiscings elitis. Pra lá , depois divoltis porris, paradis. Paisis, filhis, espiritis santis. Mé faiz elementum girarzis, nisi eros vermeio, in elementis mé pra quem é amistosis quis leo. Manduma pindureta quium dia nois paga. Sapien in monti palavris qui num significa nadis i pareci latim. Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.</p> </div> <div class="timeline-footer"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li class="timeline-inverted"> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record invert" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-body"> <p>Mussum ipsum cacilds, vidis litro abertis. Consetis adipiscings elitis. Pra lá , depois divoltis porris, paradis. Paisis, filhis, espiritis santis. Mé faiz elementum girarzis, nisi eros vermeio, in elementis mé pra quem é amistosis quis leo. Manduma pindureta quium dia nois paga. Sapien in monti palavris qui num significa nadis i pareci latim. Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.</p> </div> <div class="timeline-footer"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-heading"> <img class="img-responsive" src="http://lorempixel.com/1600/500/sports/2" /> </div> <div class="timeline-body"> <p>Mussum ipsum cacilds, vidis litro abertis. Consetis adipiscings elitis. Pra lá , depois divoltis porris, paradis. Paisis, filhis, espiritis santis. Mé faiz elementum girarzis, nisi eros vermeio, in elementis mé pra quem é amistosis quis leo. Manduma pindureta quium dia nois paga. Sapien in monti palavris qui num significa nadis i pareci latim. Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.</p> </div> <div class="timeline-footer"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li class="timeline-inverted"> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record invert" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-heading"> <img class="img-responsive" src="http://lorempixel.com/1600/500/sports/2" /> </div> <div class="timeline-body"> <p>Mussum ipsum cacilds, vidis litro abertis. Consetis adipiscings elitis. Pra lá , depois divoltis porris, paradis. Paisis, filhis, espiritis santis. Mé faiz elementum girarzis, nisi eros vermeio, in elementis mé pra quem é amistosis quis leo. Manduma pindureta quium dia nois paga. Sapien in monti palavris qui num significa nadis i pareci latim. Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.</p> </div> <div class="timeline-footer primary"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li> <div class="timeline-badge primary"><a><i class="glyphicon glyphicon-record invert" rel="tooltip" title="11 hours ago via Twitter" id=""></i></a></div> <div class="timeline-panel"> <div class="timeline-body"> <p><b>All the credits go to <a href="http://bootsnipp.com/rafamaciel">Rafamaciel</a></b></p> <p>I only make it responsive and remove the empty spaces to be more like Facebook timeline!</p> </div> <div class="timeline-footer primary"> <a><i class="glyphicon glyphicon-thumbs-up"></i></a> <a><i class="glyphicon glyphicon-share"></i></a> <a class="pull-right">Continuar Lendo</a> </div> </div> </li> <li class="clearfix" style="float: none;"></li> </ul> </div>
.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; width: 50%; float: left; clear: left; } .timeline > li:before, .timeline > li:after { content: " "; display: table; } .timeline > li:after { clear: both; } .timeline > li:before, .timeline > li:after { content: " "; display: table; } .timeline > li:after { clear: both; } .timeline > li > .timeline-panel { width: 95%; 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); } .timeline > li > .timeline-panel: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-panel: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-badge { color: #fff; width: 24px; height: 24px; line-height: 50px; font-size: 1.4em; text-align: center; position: absolute; top: 16px; right: -12px; /*background-color: #999999;*/ z-index: 100; /* border-top-right-radius: 50%; border-top-left-radius: 50%; border-bottom-right-radius: 50%; border-bottom-left-radius: 50%; */ } .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-badge > a { color: #C5C7C5 !important; } .timeline-badge a:hover { color: #000 !important; } .timeline-title { margin-top: 0; color: inherit; } .timeline-body > p, .timeline-body > ul { padding:20px; margin-bottom: 0; } .timeline-body > p + p { margin-top: 5px; } .timeline-footer{ padding:20px; background-color:#f4f4f4; } .timeline-footer > a{ cursor: pointer; text-decoration: none; } .tooltip{ position:absolute; z-index:1020; display:block; visibility:visible; padding:5px; font-size:11px; opacity:0; filter:alpha(opacity=0); } .tooltip.in{ /*opacity:0; filter:alpha(opacity=80);*/ } .tooltip.top{ margin-top:-2px; } .tooltip.right{ margin-left:2px; } .tooltip.bottom{ margin-top:2px; } .tooltip.left{ margin-left:-2px; } .tooltip.top .tooltip-arrow{ bottom:0; left:0; margin-left:0; border-left:0 solid transparent; border-right:5px solid transparent; border-top:0 solid #000; } .tooltip.left .tooltip-arrow{ bottom:0; left:0; margin-left:0; border-left:0 solid transparent; border-right:5px solid transparent; border-top:0 solid #000; } .tooltip.bottom .tooltip-arrow{ bottom:0; left:0; margin-left:0; border-left:0 solid transparent; border-right:5px solid transparent; border-top:0 solid #000; } .tooltip.right .tooltip-arrow{ bottom:0; left:0; margin-left:0; border-left:0 solid transparent; border-right:5px solid transparent; border-top:0 solid #000; } .tooltip-inner{ width:200px; padding:3px 8px; color:#fff; text-align:center; text-decoration:none; background-color:#313131; -webkit-border-radius:0px; -moz-border-radius:0px; border-radius:0px; } .tooltip-arrow{ position:absolute; width:0; height:0; } .timeline > li.timeline-inverted{ float: right; clear: right; margin-top: 30px; margin-bottom: 30px; } .timeline > li:nth-child(2){ margin-top: 60px; } .timeline > li.timeline-inverted > .timeline-badge{ left: -12px; } @media (max-width: 767px) { ul.timeline:before { left: 40px; } ul.timeline > li { margin-bottom: 20px; position: relative; width:100%; float: left; clear: left; } ul.timeline > li > .timeline-panel { width: calc(100% - 90px); width: -moz-calc(100% - 90px); width: -webkit-calc(100% - 90px); } ul.timeline > li > .timeline-badge { left: 28px; margin-left: 0; top: 16px; } ul.timeline > li > .timeline-panel { float: right; } ul.timeline > li > .timeline-panel:before { border-left-width: 0; border-right-width: 15px; left: -15px; right: auto; } ul.timeline > li > .timeline-panel:after { border-left-width: 0; border-right-width: 14px; left: -14px; right: auto; } .timeline > li.timeline-inverted{ float: left; clear: left; margin-top: 30px; margin-bottom: 30px; } .timeline > li.timeline-inverted > .timeline-badge{ left: 28px; } }
$(document).ready(function(){ var my_posts = $("[rel=tooltip]"); var size = $(window).width(); for(i=0;i<my_posts.length;i++){ the_post = $(my_posts[i]); if(the_post.hasClass('invert') && size >=767 ){ the_post.tooltip({ placement: 'left'}); the_post.css("cursor","pointer"); }else{ the_post.tooltip({ placement: 'rigth'}); the_post.css("cursor","pointer"); } } });

Related: See More


Questions / Comments:

Hi all, please how i can install this? thx

HICHEM TIGS () - 8 years ago - Reply 0


????????????????????????

HICHEM TIGS () - 8 years ago - Reply 0


Awesome snippet! Nice job It I will be using it for definite.

David Simpson () - 9 years ago - Reply 0


Thank you for a great work! I'm trying to use in one of the projects for my client. Here are some sample pages where I'm using this.

http://theysaidso.com/bible

http://theysaidso.com/bible...

If you notice after 5th timeline node the 6 & 7 are not in order ( in terms of just the real estate area where they appear). I tried few things but no luck. What am I missing?

Johny () - 9 years ago - Reply 0


Thank you! I am using this, already. :)

Alex () - 9 years ago - Reply 0


I would use this, but Facebook patented their timeline. So if you got big Facebook could sue you for using this.

Darky () - 9 years ago - Reply 0


I believe Facebook's patent is very very specific, not just any "timeline" design. Could you post a link to the patent? I remember it being explicitly for social feed and not just for any list that looks like a sequence of events.

maxsurguy () - 9 years ago - Reply 0


Facebook's Patent link: http://patft.uspto.gov/neta...

Ethan () - 9 years ago - Reply 0


Thanks! Looking at the patent, it is very specifically for a social network timeline, with much more details than just any chronological list of things. I believe a chronological list like this snippet doesn't equal to the information in the patent. Where's the social aspect of the snippet, where is the backend service, etc etc.

maxsurguy () - 9 years ago - Reply 0


hey now plzz tell me, using it will break the patient or not?

Victor Davis Lenz () - 8 years ago - Reply 0


awesome sir SrPatinhas, i really appreciate your work. i'm going to use this in my project. so thank you very much for this great snippet.

Rahul giri () - 9 years ago - Reply 0


I'm using this for sure! GREAT work!

Travis Layne () - 10 years ago - Reply 0


Nice job I wanted to do this myself but didn't know enough. Thanks!

Sean Kelly () - 10 years ago - Reply 0