CSS:CSS学习总结
CSS:CSS学习总结
背景
CSS是一种声明式的语言,学好CSS的难度甚至大于学好一门服务器语言(我个人的感觉),这周在学习CSS,就记录一下学习经验。
1、规则声明顺序
因为CSS的样式具备层叠性和继承性,为了最小化代码量,规则的声明可以按照如下顺序:
- 常用标记
 - 常用类
 - 布局类
 - 导航类
 - 表格类
 - 表单类
 - 组件类
 
2、盒子模型、文档流、定位和浮动一定要清楚
- 盒子模型:浏览器把每种标记都当做一个盒子,有两种盒子(内联和框),他们在文档流中的布局模式是不同的。
 - 文档流:框盒子会被从上到下的布局,内联盒子会被从左到右、从上到下的布局。
 - 定位:可以修改框盒子的定位方式,static(正常的文档流中的位置)、absolute(相对于最近一个被定位(非static定位)了的祖先原始的位置,脱离了文档流)、relative(相对于正常的文档流的位置,保留原来的位置)、fixed(相对于窗口,脱离了文档流)。
 - 浮动:浮动会导致元素脱离文档流,元素会浮动到父亲元素的边缘或其它浮动元素的边缘,如果遇到空间不够就会下降寻找足够的空间,浮动一般伴随着清楚,清除会让元素的左右没有任何浮动元素。
 
教程:http://www.w3school.com.cn/css/css_positioning.asp。
3、利用伪元素清除浮动

1 .clear-fix:after
2 {
3 content: ".";
4 clear: both;
5 display: block;
6 height: 0;
7 visibility: hidden;
8 }

教程:http://www.w3school.com.cn/css/css_pseudo_elements.asp。
4、margin可以支持负数
Bootstrap中的栅格系统就用了这个特性,row的margin-left为-20px,span*的margin-left也为20px,这样就抵消了第一个span的margin。
教程:http://www.w3school.com.cn/css/css_margin.asp。
5、属性选择器

1 [class*="span"] {
2      float: left;
3      min-height: 1px;
4      margin-left: 20px;
5 }

教程:http://www.w3school.com.cn/css/css_selector_attribute.asp。
6、相邻兄弟选择器

1 .main-content
2 {
3 background: url("../Images/accent.png") no-repeat;
4 padding-left: 10px;
5 padding-top: 30px;
6 }
7
8 .featured + .main-content
9 {
10 background: url("../Images/heroAccent.png") no-repeat;
11 }

教程:http://www.w3school.com.cn/css/css_selector_adjacent_sibling.asp。
备注
CSS不好学习,还是需要专门的人员来做,后端懂点CSS有利于更好的合作。
CSS:CSS学习总结的更多相关文章
- DIV+CSS系统学习:转载
		
第一部分 HTML 第一章 职业规划和前景 职业方向规划定位: web前端开发工程师 web网站架构师 自己创业 转岗管理或其他 web前端开发的前景展望: 未来IT行业企业需求最多的人才 结合最新的 ...
 - CSS入门级学习
		
css入门学习1:认识CSS 1.1:css简介,css全称是层叠样式表,Cascading style sheets 1.2:css的作用,主要是用于定义html内容在浏览器内的显示样式,如文字大小 ...
 - css居中学习笔记
		
css居中学习笔记 一.水平居中 以下面的代码为例: <body> <div class="parent"> <div class="chi ...
 - CSS入门学习(转)
		
一.基础学习 1.何为CSS CSS是Cascading Style Sheets(层叠样式表)的简称,是一种标记语言,它不需要编译,可以直接由浏览器执行(属于浏览器解释型语 言). CSS文件也可以 ...
 - HTML&CSS基础学习笔记1.24-input标签的单选与多选
		
单选和多选 单选框和多选框是用<input>标签来实现的. <input>标签的type属性值为"checkbox"时,表示多选框,为"radio ...
 - HTML&CSS基础学习笔记1.23-表单的文本域和下拉列表
		
文本域 <textarea>标签定义多行的文本输入控件. 平时在网页上的一些需要输入比较多的内容的输入框,比如回复帖子,回答问题等,都可以用<textarea>标签. < ...
 - HTML&CSS基础学习笔记—创建列表
		
创建一张表格 很多时候我们需要在网页上展示一些数据,使用表格可以很好的来展示数据. 在HTML中<table>标签定义 表格. <table> </table> 添 ...
 - HTML/CSS/JavaScript学习总结(转)
		
HTML 网站开发的主要原则是: – 用标签元素HTML描述网页的内容结构: – 用CSS描述网页的排版布局: – 用JavaScript描述网页的事件处理,即鼠标或键盘在网页元素上的动作后的程序 H ...
 - CSS 3 学习笔记
		
css 3 学习笔记 文本: word-wrap : normal | break-word取值:normal: 控制连续文本换行.break-word: 内容将在边界内换行.如果需要,词 ...
 - (2)《Head First HTML与CSS》学习笔记---img与基于标准的HTML5
		
1.浏览器处理图像的过程: 1.服务器获取文件,显示出文本结构,以及预留默认的大小给<img>(如果该<img>有width-1值和height-1值,则根据这个值提前设好页面 ...
 
随机推荐
- GitHub Top 100 简介
			
主要对当前 GitHub 排名前 100 的项目做一个简单的简介, 方便初学者快速了解到当前 Objective-C 在 GitHub 的情况. GitHub 地址:https://github.co ...
 - Java初始阶段
			
初时接触感觉Java与C语言有很多异曲同工之处. Java起源: Java之父:James Gosling 正式发布时间:1995年5月23日 其特点为:简单.面向对象.可移植.多线程.动态 其编译后 ...
 - PHP通过传递对象参数调用asp.net Webservice 服务
			
asp.net 测试服务 ProcessRequest.asmx文件代码 public class ProcessRequest : System.Web.Services.WebService ...
 - MVC验证02-自定义验证规则、邮件验证
			
原文:MVC验证02-自定义验证规则.邮件验证 本文体验MVC自定义验证特性,来实现对邮件的验证.对于刚写完的自定义验证特性,起初只能支持后端验证.如果要让前端jquery支持,还必须对jquery的 ...
 - 给phpcms v9加入一个主题radio无线电button,它可反复使用,以创建不同的专题部分内容编辑器,添加一个主题来定义自己的领域
			
1. 2. 找到 phpcms\modules\special\templates中的special_add.tpl.php和special_edit.tpl.php文件 special_add.tp ...
 - IISExpress配置文件
			
ASP.NET MVC IISExpress配置文件的一个坑 现象: 昨天在处理PBS系统问题的时候意外发现两个js错误(而同样的代码在同事机器上都没有问题),如下图. 图1 图2 图3 原因分析: ...
 - Upload无刷新上传控件
			
Upload无刷新上传控件 最近在做一个web开发项目 ,用到upload上传控件 ,由于c#提供的控件局限性太大 ,所以就自己从国外大牛 手里借鉴一下. 该控件可以判断上传的文件是否已存在 ,减少了 ...
 - Kafka spring 集成
			
下载配置kafka参考该链接:http://www.cnblogs.com/super-d2/p/4534323.html pom.xml: <dependency> <groupI ...
 - Ping域名惊现65.49.2.178
			
--- 昨天新建的博,早晨起来进去看看,发现无法访问.这… 排错开始,ping域名出现如上图所示结果,请求超时…哪里的问题呢 有时常识是害人的,想起了前两月群里也有人说本地无法访问自己网站,别人能访问 ...
 - Java设置环境变量
			
客上转过来的. 非常多人写了非常久java代码.还不知道环境变量是怎么一回事.科普一下. 一.java设置环境变量 - 精简版 1.右键打开我的电脑->属性->高级->环境变量 ...