0
点赞
收藏
分享

微信扫一扫

base.css

逸省 2022-07-13 阅读 58


今天读到曹刘阳编写的《编写高质量代码-web前端开发修炼之道》,其中对与css的写法有一种特别好的写法。运用了mvc设计方式,将css代码分为三层,分别是
1.page
2.common
3.base
总共这三层
其中base是最底层,提供了css reset功能和粒度最小的通用类-原子类。base相对稳定,基本不需要维护。
这本书还附了base.css代码。我特地手敲下来供大家分享

/*css reset*/
body,div,dl,dt,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,
textarea,p,blockquote,th,td{margin:0;margin:0;}
table{border-collapse:collapse;border-spacing:0; }
fieldset,img{border:0}
address,caption,cite,code,dfn,em,strong,th,var{font-style: normal;font-weight: normal;}
ol,ul{list-style:none;}
caption,th{text-align: left}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight: normal;}
q:before,q:after{content:''}
abbr,acronym{border:0}

/*文字排版*/
.f12{font-size:12px}
.f13{font-size:13px}
.f14{font-size:14px}
.f16{font-size:16px}
.f20{font-size:20px}
.fn{font-weight: bold;}
.t2{text-indent:2em}
.lh150{line-height:150%}
.lh180{line-height:180%}
.lh200{line-height:200%}
.unl{text-decoration: underline;}
.no_url{text-decoration: none}

/*定位*/
.t1{text-align: left;}
.tc{text-align: center;}
.tr{text-align: right;}
.bc{margin-left: auto;margin-right: auto}
.f1{float: left;display: inline}
.fr{float: right;display: inline;}
.cb{clear: both;}
.cl{clear:left;}
.cr{clear:right;}
.clearfix:after{content:".";display: block;height:0;clear: both;visibility: hidden;}
.clearfix{display: inline-block;}*html
.clearfix{height:1%}.Clearfix{display: block;}
.vm{vertical-align: middle;}
.pr{position: relative;}
.pa{position: absolute;}
.abs-right{position: absolute;right:0}
.zoom{zoom:1;}
.hidden{visibility: hidden;}
.none{display: none}

/*长度高度*/
.w10{width:10px}
.w20{width:20px}
.w30{width:30px}
.w40{width:40px}
.w50{width:50px}
.w60{width:60px}
.w70{width:70px}
.w80{width:80px}
.w90{width:90px}
.w100{width:100px}
.w200{width:200px}
.w250{width:250px}
.w300{width:300px}
.w400{width:400px}
.w500{width:500px}
.w600{width:600px}
.w700{width:700px}
.w800{width:800px}
.w{width:100%}
.h50{height:50px}
.h80{height:80px}
.h100{height:100px}
.h200{height:200px}
.h{height:100%}

/*边距*/
.m10{margin:10px;}
.m15{margin:15px;}
.m30{margin:30px;}
.mt5{margin-top:5px}
.mt10{margin-top:10px}
.mt15{margin-top:15px}
.mt20{margin-top:20px}
.mt30{margin-top:30px}
.mt50{margin-top:50px}
.mt100{margin-top:100px}
.mb5{margin-bottom:5px }
.mb10{margin-bottom:10px}
.mb15{margin-bottom:15px}
.mb20{margin-bottom:20px}
.mb30{margin-bottom:30px}
.mb50{margin-bottom:50px}
.mb100{margin-bottom:100px}
.ml5{margin-left:5px}
.ml10{margin-left:10px}
.ml15{margin-left:15px}
.ml20{margin-left:20px}
.ml30{margin-left:30px}
.ml50{margin-left:50px}
.ml100{margin-left:100px}
.mr5{margin-right:5px}
.mr10{margin-right:10px}
.mr15{margin-right:15px}
.mr20{margin-right:20px}
.mr30{margin-right:30px}
.mr50{margin-right:50px}
.mr100{margin-right:100px}
.p10{padding:10px}
.p15{padding:15px}
.p30{padding:30px;}
.pt5{padding-top:5px}
.pt10{padding-top:10px}
.pt15{padding-top:15px}
.pt20{padding-top:20px}
.pt30{padding-top:30px}
.pt50{padding-top:50px}
.pb5{padding-bottom:5px}
.pb10{padding-bottom:10px}
.pb15{padding-bottom:15px}
.pb20{padding-bottom:20px}
.pb30{padding-bottom:30px}
.pb50{padding-bottom:50px}
.pb100{padding-bottom:100px}
.pl5{padding-left:5px}
.pl10{padding-left:10px}
.pl15{padding-left:15px}
.pl20{padding-left:20px}
.pl30{padding-left:30px}
.pl50{padding-left:50px}
.pl100{padding-left:100px}
.pr5{padding-right:5px}
.pr10{padding-right:10px}
.pr15{padding-right:15px}
.pr20{padding-right:20px}
.pr30{padding-right:30px}
.pr50{padding-right:50px}
.pr100{padding-right:100px}
.pt

第二层的common层提供组件级的css类。使得css模块化,就是mvc中的m模型层,为了保证重用性和灵活性,m层需要尽可能的将内部封装,对可能会经常的变化的部分提供灵活的接口。common层就像门窗,不同的房子所需要的不一样。位置不同但样式相同。
page层是非高度重用的。放在page层。就想房间内的装饰画,不同房间装饰不一样。


举报

相关推荐

base.css文件

CustomPlugins:Base

Base理论

Swift UI base

Base 功能更新

【muduo/base】线程

0 条评论