A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1、使用伪类:not()去除导航上某个不需要的边框或者添加

li:not(:last-child){border-right:1px solid #ccc;}//给你指定的某个元素添加右边框

2、为body添加行高,这样就不需要分别为每一个p,h*等元素添加行高,因为文本元素会从body继承;

body{line-height:1;}

3、垂直居中任何元素(注意:IE11上flexbox的一些缺陷行为)



  • html,body{height:100%;margin:0;}



  • body {



  •   -webkit-align-items: center;  



  •   -ms-flex-align: center;  



  •   align-items: center;



  •   display: -webkit-flex;



  •   display: flex;



  • }


4、逗号分离的列表

ul > li:not(:last-child)::after {content: ",";}

5、使用负nth-child选择元素



  • CSS使用负nth-child选择1到n的元素。



  • li {display: none;}



  • li:nth-child(-n+3) {display: block;}//选择1到3的元素并显示



  • 伪类 :not()方法:



  • li:not(:nth-child(-n+3)){display: none;}//选择1到3的元素并显示







  • 使用SVG图标:



  • .logo {background: url("logo.svg");}



  • SVG对所有分辨率类型具有良好的伸缩性,IE9以上的所有浏览器都支持。所以放弃.png,.jpg或gif-jif等任何文件。



  • 注意:如果你使用SVG图标按钮,同时SVG加载失败,下面能帮助你保持可访问性:



  • .no-svg .icon-only:after {content: attr(aria-label);}


6、在纯CSS实现的内容化快上使用max-height(同时设置overflow:hidden)



  • .ul ul{max-height:0;overflow:hidden;}



  • .ul:hover ul{max-height:1000px;transition: .3s ease; /* animate to max-height */}


7、继承box-sizing(让插件或使用其他行为的组件能很容易改变box-sizing)



  • html继承box-sizing



  • html{box-sizing:border-box;}



  • , :before, *:after {box-sizing: inherit;}


8、表格单元格等宽

table-layout:fixed;

9、使用Flexbox拜托边界Hack(当使用列约束时,可以抛弃nth-,first- 和last-child的hacks,使用flexbox的space-between属性)



  • .list{display:flex;justidy-content:space-between;}



  • .list .person{flex-basis:23%;}


浏览器支持:当前版本的Chrome,Firefox, Safari, 以及Edge, 和IE11


1 个回复

正序浏览
奈斯,棒棒哒
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马