精通CSS:高级WEB解决方案
- 选择器:高级选择器:属性选择器:[] ,例如:a[href=”#”] {};选择器的优先级:!important为最高优先级,其次优先级次序规则:a,b,c,d ,a代表行内样式,b代表ID选择器,c代表类、伪类、属性选择器,d代表类型元素选择器和伪元素选择器,它们的基数是1000,100,10,1;
- 设计良好的CSS样式表:①结构(自上而下):一般样式:主体样式、reset样式、链接、标题、其他元素;辅助样式:表单、通知和错误、一致的条目;页面结构:标题、页脚和导航;页面组件:各个页面;覆盖②注释:开发期间,在样式表的最开头把最常用的颜色16进制注释出来,开发完成后删除。可以使用不同标识符来表示哪些代码可能在以后需要更改,哪些是浏览器遇到的问题
- 可视化格式模型:①盒模型:IE6早期的盒模型width属性包括内容、内边距以及边框的综合,而现在的盒模型width属性只指内容;②普通流的块元素的外边距叠加问题:当两个垂直外边距相遇时,它们会发生叠加,这个外边距的高度将会等于两个外边距中较大的那个,无论这个元素是父元素与子元素还是相邻元素之间,但在行内框、浮动元素以及绝对定位的元素不会发生上述情况;③行内框:行内框的尺寸只受行高、水平内外边距以及边框的影响;④相对定位:相对定位会占据原来的空间,移动会导致它覆盖其它框;⑤绝对定位:相对于距离它最近的已定位的祖先元素,所以要在绝对定位的父级设置成相对定位,可以通过设置z-index来控制层叠次序;⑥浮动:浮动框左右移动直到移动到父级边框或者另一个浮动框的边缘,行框将会围绕在浮动框的周围,如果不想行框在浮动框周围,则把行框clear设置成both,也可以通过设置overflow:hidden/auto产生的副作用清除浮动
- 对链接应用样式::link表示没有访问过的链接,:visited表示访问过的链接,:hover,:foucs,:active,注意它们的选择器特殊性可能会导致层叠,因而采用LVHFA的先后次序,一般情况下是取消默认的下划线,在鼠标悬停或者激活链接时添加下划线,在不同状态下且无需再次加载更换背景图片的技巧:采用雪碧图,在不同状态控制图片的不同偏移位置显示不同的图片
- 对列表应用样式和创建导航栏:如果需要为列表符号添加特定的符号,可以把默认的项目符号去掉,留出内边距,用背景图像代替即可;为了在菜单栏上创建斜面的效果,一般把顶边框设置得比背景颜色浅,而底边框则深一点;纯CSS实现下拉菜单:在li标签里面嵌套ul>li标签,然后父元素li标签相对定位,子元素ul绝对定位,display为none,悬浮时显示出来;表单元素样式,可以通过直接在lable里面添加表单控件,也可以通过for的方式在外边添加表单控件,通常为了提示用户以及反馈给用户哪些单是必须填的可以使用em/span元素进行提示和标记
- 布局:①结构设计:先把页面划分为大的结构性区域,比如容器、页眉、页脚、内容区域,然后将注意力转移到内容区域本身,开始建立网格结构,最后在各个内容区域中寻找不同的布局结构;②分析不同类型的内容,查看每个内容块的结构,看看不同的类型中是否有相同的模式,找出模式并命名约定后,开始定义即将使用的元素;③布局类型:浮动布局:a.两列的浮动布局:在一个主体容器中分成左右两个容器并左右浮动,主体容器可以采用溢出的方法清除浮动;b.三列布局:在两列布局的基础上,在其中一个容器添加两个容器,并使得这两个容器左右浮动,父容器本身也要浮动,相当于四个容器都浮动;固定宽度、流式布局和弹性布局:固定宽度采用固定像素,流式布局采用百分比,弹性布局采用em,流式布局和弹性布局都要注意min-width和max-width;设置三个列相同高度的技巧:在一个主体容器中,放置三个容器,这三个容器高度由内容撑开,然后设置底边距为主容器的高度,再把overflow设置成hidden
- bug和修复bug:①选择器特殊性次序导致样式不成效问题;②外边距叠加问题;常见bug及其修复方法:
精通CSS:高级WEB解决方案的更多相关文章
- 精通CSS高级Web标准解决方案(1-1选择器)
设计代码的结构 使用有意义的标记 css可以控制页面的外观并将表现与内容分隔开. 在分配ID与类名时尽量保证有意义且与表现无关. div可以对块级元素进行分组,而span可以对行内元素进行分组或标识. ...
- 精通css 高级web标准解决方案——可视化格式模型-定位模型
CSS 中有三种定位机制:普通流.浮动.绝对定位.(默认为普通流) 改变文档流:display: inline-block; (支持到ie8及以上) 1-匿名块框: <div> 你好! & ...
- 精通css 高级web标准解决方案——可视化格式模型-盒模型
1-盒模型的两种标准: IE :width 和 height属性 是包括padding和border在内的. w3c:width 和 height 属性,就是单纯的内容的宽高,padding 是内容之 ...
- 精通CSS高级Web标准解决方案(4、对链接应用样式)
4.1 简单的链接样式 锚可以作为内部引用,也可以作为外部链接,应该区分对待. 伪类选择器: :link 用来寻找没有访问过的链接 :visited 用来寻找已经访问过的链接 a:link{color ...
- 精通CSS高级Web标准解决方案(2-2 可视化格式模型之定位概述)
视觉格式化模型 块级元素(块框).行内元素(行内框),可以使用display改变生成的框的类型,display:block让行内元素(比如<a>)表现的跟块级元素一样,display:no ...
- 精通CSS高级Web标准解决方案(2-1 可视化格式模型之框模型)
浮动.定位.框模型这些控制在页面上安排和显示元素的方式,形成CSS布局. 盒子模型 页面上的每个元素都被看成一个矩形框. 盒子模型有两种,分别是 IE 盒子模型和标准 W3C 盒子模型.他们对盒子模型 ...
- 精通CSS高级Web标准解决方案(1-3 规划、组织与维护样式表)
对文档应用样式 对代码进行注释/*......*/ 结构性注释 自我提示 删除注释.优化样式表 样式指南:解释代码与站点的视觉设计是如何组织在一起的 站点结构.文件结构.命名规则 编码标准:(X)ht ...
- web前端好书推荐 CSS权威指南《第3版,Bootstrap实战,精通CSS 高级Web标准解决方案 第2版 中文
在我的新博客中==> http://www.suanliutudousi.com/2017/08/24/web%E5%89%8D%E7%AB%AF%E5%A5%BD%E4%B9%A6%E6%8E ...
- 精通CSS高级Web标准解决方案(1-2 层叠与特殊性)
层叠与特殊性 选择器的特殊性分成四个等级,a.b.c . d 如果样式是行内样式,那么a=1 b=ID选择器的总数 c=类.伪类.属性选择器的总数 d=标签选择器与伪元素选择器数量 例如:style ...
随机推荐
- 2017 校赛 问题 E: 神奇的序列
题目描述 Aurora在南宁发现了一个神奇的序列,即对于该序列的任意相邻两数之和都不是三的倍数.现在给你一个长度为n的整数序列,让你判断是否能够通过重新排列序列里的数字使得该序列变成一个 ...
- 干货|Spring Cloud Bus 消息总线介绍
继上一篇 干货|Spring Cloud Stream 体系及原理介绍 之后,本期我们来了解下 Spring Cloud 体系中的另外一个组件 Spring Cloud Bus (建议先熟悉 Spri ...
- HDU 5584 LCM Walk【搜索】
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5584 题意: 分析: 这题比赛的时候卡了很久,一直在用数论的方法解决. 其实从终点往前推就可以发现, ...
- 实现ios后台缩略图模糊的一种方法
http://blog.sina.com.cn/s/blog_64cfe8f00102ux5t.html 今天玩手机(Iphone)发现应用切换支付宝会变模糊,不禁感叹,细节处理的太到位了. 怎么 ...
- GitOps:Kubernetes多集群环境下的高效CICD实践
为了解决传统应用升级缓慢.架构臃肿.不能快速迭代.故障不能快速定位.问题无法快速解决等问题,云原生这一概念横空出世.云原生可以改进应用开发的效率,改变企业的组织结构,甚至会在文化层面上直接影响一个公司 ...
- auto uninstaller密钥激活码破解注册机ver 8.8.58
auto uninstaller密钥破解注册机ver 8.8.58 楼主分享几个auto uninstaller密钥破解注册机,可以用于auto uninstaller 8.8.58 .因为每个版本的 ...
- @bzoj - 4709@ 柠檬
目录 @desription@ @solution@ @accepted code@ @details@ @desription@ 一共有 N 只贝壳,编号为 1...N,贝壳 i 的大小为 si. ...
- 动画删除cell出问题
删除UITableView行的代理时出了问题 解决办法 先remove数据,再执行 [_mTableView deleteRowsAtIndexPaths:[NSArray arrayWithObje ...
- laravel 5.5 登录验证码 captcha 引入
https://blog.csdn.net/u013372487/article/details/79461730 前提: 开启Laravel 的用户认证功能 1.安装 Captcha 安装 Capt ...
- Project Euler Problem 15-Lattice paths
组合数,2n中选n个.向右走有n步,向下走有n步.共2n步.有n步是向右走的,计算向右走的这n步的所有情况,即C(2n,n). 或者,每一步,只能从右边或者上边走过来,只有这两种情况,即step[i] ...