您现在的位置是:网站首页> 编程资料编程资料
详解CSS的DRY编程方式CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
2023-10-23
213人已围观
简介 这篇文章主要介绍了详解CSS的DRY编程方式,是OOCSS之外另一个流行的编写CSS的通用规则,需要的朋友可以参考下
DRY就是Donot repeat youself 不要重复。但其实这个名字有点无趣,哪个理论不是消除重复呢,但如何消除才是意义所在。总的来说我认为DRYCSS与OOCSS是两个极端,所以我将会以对比的方式来讲讲DRYCSS的内容。使用DRYCSS很简单,三步。
1. 分组可复用属性
DRYCSS跟OOCSS有点像,第一步都是分组样式,消除重复,但就像我说的,关键在于如何。OOCSS将样式集合看作对象,所以分组的逻辑是,某个元素本身应该是什么样的,而DRYCSS则关注重复,无论什么逻辑,只要是一样的就应该只有一个。其中粒度是值得思考的问题,如果太细,那只会成为一行样式一组这样无意义的情况,如果太粗,又会变成毫无复用性的庞然大物。我认为可以将一些有关联的缺了A时B就没作用的样式分为一组,还可以将某些惯用搭配分为一组。下面举个例子:
- {
- float: left;
- position: absolute;
- display: inline-block;
- overflow: hidden;
- }
这是一组样式,可用来触发Block formatting Contexts(块级格式化上下文),如此就完成了一组样式。接着再写2组关于尺寸的样式吧。
- {
- width: 960px;
- height: auto;
- }
- {
- width: 720px;
- height: 600px;
- }
- {
- width: 220px;
- height: 600px;
- }
这是三组样式用来布局,将页面分为左右两部分。
2. 按逻辑为分组命名
接着我们来为其命名,其实就是添加一个ID选择器,但是我们并不真的使用它,而是用来标示该组样式。下面就来命名上面所分组的样式。
- #BLOCK_FORMATTING_CONTEXTS
- {
- float: left;
- position: absolute;
- display: inline-block;
- overflow: hidden;
- }
- #LAYOUT_FULL
- {
- width: 960px;
- height: auto;
- }
- #LAYOUT_CONTENT
- {
- width: 720px;
- height: 600px;
- }
- #LAYOUT_SIDEBAR
- {
- width: 220px;
- height: 600px;
- }
这一步类似OOCSS的class,它决定了每组样式所代表的逻辑或用途,然而DRYCSS多了最关键的下一步,也是与OOCSS本质区别。
3. 为各个分组添加选择器
DRYCSS在使用时和OOCSS有着巨大的差异,在CSS文件中写入HTML中的class选择器来使用这些分组后的样式,而不是直接在HTML中使用CSS文件中写好的class。
- .header,
- .container,
- .content-rightright,
- .content-left,
- #BLOCK_FORMATTING_CONTEXTS
- {
- float: left;
- position: absolute;
- display: inline-block;
- overflow: hidden;
- }
- .header,
- .navigator,
- .container,
- #LAYOUT_FULL
- {
- width: 960px;
- height: auto;
- }
- .content-rightright,
- .section,
- #LAYOUT_CONTENT
- {
- width: 720px;
- height: 600px;
- }
- .content-rightright,
- .sidebar,
- .profile,
- #LAYOUT_SIDEBAR
- {
- width: 220px;
- height提示:
本文由神整理自网络,如有侵权请联系本站删除!
本站声明:
1、本站所有资源均来源于互联网,不保证100%完整、不提供任何技术支持;
2、本站所发布的文章以及附件仅限用于学习和研究目的;不得将用于商业或者非法用途;否则由此产生的法律后果,本站概不负责!
相关内容
- 浅谈CSS中的OOCSS编程方式浅谈CSS编程的OOCSS和SMACSS设计模式
- 利用SVG和CSS3来实现一个炫酷的边框动画纯CSS3实现的鼠标悬停文字线条边框动画特效源码CSS3基于SVG实现的多种鼠标滑过边框线条动画特效源码CSS3实现的鼠标滑过边框线条动画特效源码纯css3实现的鼠标滑过圆形边框动画特效源码jQuery+CSS3实现响应式鼠标悬停图片边框炫酷动画特效源码纯css3基于svg实现鼠标经过按钮边框线条动画特效源码6种非常炫酷的CSS3按钮边框动画特效CSS3实现6种炫酷的按钮边框动画特效源码CSS3实现的图片边框动画特效源码使用纯 CSS 创作一个渐变色动画边框
- 天天酷跑刀锋加豹子刷分视频语音解说_手机游戏_游戏攻略_
- 天天酷跑极速世界满分手动3万7千米视频教程_手机游戏_游戏攻略_
- 天天酷跑火焰地图不作弊高分图文攻略推荐_手机游戏_游戏攻略_
- 天天酷跑百变萝莉和审判女王大比拼,究竟谁更强_手机游戏_游戏攻略_
- 天天酷跑坐骑大比拼五大热门坐骑属性对比分析_手机游戏_游戏攻略_
- 天天酷跑最新刷分刷钻石经验技巧坐骑冲级攻略_手机游戏_游戏攻略_
- 天天酷跑审判女王抽奖获得方法说明_手机游戏_游戏攻略_
- 天天酷跑紫焰哈雷和闪电豹刷分实力对比分析_手机游戏_游戏攻略_
点击排行
本栏推荐
