1. 二宝博客首页
  2. JS相关

纯CSS打造的Family tree(族谱)

        Test     /*Now the CSS*/* {margin: 0; padding: 0;} .tree ul {    padding-top: 20px; position: relative;         transition: all 0.5s;    -webkit-transition: all 0.5s;    -moz-transition: all 0.5s;} .tree li {    float: left; text-align: center;    list-style-type: none;    position: relative;    padding: 20px 5px 0 5px;         transition: all 0.5s;    -webkit-transition: all 0.5s;    -moz-transition: all 0.5s;} /*We will use ::before and ::after to draw the connectors*/ .tree li::before, .tree li::after{    content: '';    position: absolute; top: 0; right: 50%;    border-top: 1px solid #ccc;    width: 50%; height: 20px;}.tree li::after{    right: auto; left: 50%;    border-left: 1px solid #ccc;} /*We need to remove left-right connectors from elements without any siblings*/.tree li:only-child::after, .tree li:only-child::before {    display: none;} /*Remove space from the top of single children*/.tree li:only-child{ padding-top: 0;} /*Remove left connector from first child and right connector from last child*/.tree li:first-child::before, .tree li:last-child::after{    border: 0 none;}/*Adding back the vertical connector to the last nodes*/.tree li:last-child::before{    border-right: 1px solid #ccc;    border-radius: 0 5px 0 0;    -webkit-border-radius: 0 5px 0 0;    -moz-border-radius: 0 5px 0 0;}.tree li:first-child::after{    border-radius: 5px 0 0 0;    -webkit-border-radius: 5px 0 0 0;    -moz-border-radius: 5px 0 0 0;} /*Time to add downward connectors from parents*/.tree ul ul::before{    content: '';    position: absolute; top: 0; left: 50%;    border-left: 1px solid #ccc;    width: 0; height: 20px;} .tree li a{    border: 1px solid #ccc;    padding: 5px 10px;    text-decoration: none;    color: #666;    font-family: arial, verdana, tahoma;    font-size: 11px;    display: inline-block;         border-radius: 5px;    -webkit-border-radius: 5px;    -moz-border-radius: 5px;         transition: all 0.5s;    -webkit-transition: all 0.5s;    -moz-transition: all 0.5s;} /*Time for some hover effects*//*We will apply the hover effect the the lineage of the element also*/.tree li a:hover, .tree li a:hover+ul li a {    background: #c8e4f8; color: #000; border: 1px solid #94a0b4;}/*Connector styles on hover*/.tree li a:hover+ul li::after, .tree li a:hover+ul li::before, .tree li a:hover+ul::before, .tree li a:hover+ul ul::before{    border-color:  #94a0b4;} /*Thats all. I hope you enjoyed it.Thanks :)*/                        Parent                                            Grand Child                                                    Grand Child                                                                            Grand Child                                                                                        Great Grand Child                                                                                                    Great Grand Child                                                                                                    Great Grand Child                                                                                                                Grand Child                                                                                Child                                                                        Child

familytree.jpg

]]>

原创文章,作者:键盘游走者,如若转载,请注明出处:http://www.708034.com/2015/08/%e7%ba%afcss%e6%89%93%e9%80%a0%e7%9a%84family-tree%ef%bc%88%e6%97%8f%e8%b0%b1%ef%bc%89/

发表评论

电子邮件地址不会被公开。 必填项已用*标注