浏览器的组成:

shell+内核

shell:用户能看得到的界面就叫shell

内核:渲染rendering引擎和js引擎

现在主流拥有自己开发内核的浏览器:opera现在属于360和昆仑万维

 

 CSS(cascading style sheet)层叠样式表

内联样式写法:

 

 内部样式表:

 

 外部样式表:

 

 

 href:typertext reference:针对外部的引用

src:source:加载资源

 

这三种方式有权重的问题:分别是内联样式的优先级>内部样式的优先级>外部样式的优先级

 

在输入网址的那一刻,浏览器就在寻找相应的目的地下载相应的东西,加载的是html,css,javascript,图片

流程图:

可以看到浏览器会在加载的时候分别进行html下载和css样式的下载,

html会先形成dom树,而css会形成css规则树,当dom树和css规则树合并的时候就会形成渲染树;

渲染树进行布局,当进行页面动态交互就会重写渲染树,渲染树在重新布局

 

id选择器和类选择器就不讲了,基本都会

 通配符选择器:适用于所有的标签:这其实不是很好 因为我们有时候需要p和h标签的外边距,这样写了就表示所有标签的外边距都没了,所以在定义的时候需要谨慎

 

 属性选择器:[标签里面的属性]

 

 

 !import:在css样式里面权重是最高的

 

 class类选择器和属性选择器是同级的,谁在后面引用谁

正常选择器的权重比较:

 

 

 派生选择器: 类与标签,类与类,标签与标签,id和标签,id和类,id不能和id

 

 

 在企业里面不推荐这样写:因为id本来就唯一了,这样写渲染是没问题的,但是没什么意义

 

 

 权重:*通配符的权重为0,标签/伪元素的权重为1,class/属性/伪类的权重值为10,id 的权重值是100,

内联样式的权重值是1000,!import的权重为正无穷

 

并列选择器:

 

 

 

一个简单的样式案例:

 

 

 

 

 

 

 

今天学习第一个属性:outline:轮廓

聚焦的时候就不会有蓝色的轮廓了

 

 

 设置outline的属性:

outline-color:轮廓颜色, 

outline-width:轮廓宽度:单位是px

去除轮廓:outline:none 现在企业开发只需要这个去除轮廓

outline-style:轮廓样式:

 

浏览器对父子选择器的匹配规则:(算法里面树寻找规则:从右到左,从下到上)

 

 

作业:

 

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/mahuablog/p/14619637.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!