CSS 层叠与继承
CSS 层叠与继承
三种继承css方式
1.段内继承
<p style="color: red;font-size:50px;">样式原文</p>
- 原文变成 红色,
- 原文字体变大
两个都是通过改变样式属性的值去实现的. 语法详解:
1.每个样式属性会有不同的值, "color: red" 通过冒号表达color的属性.
2.属性间要用分号间隔和闭合
3.font-size 属于复合属性
2. 文档内继承
<style> 全局style 要使用<style>标签, 设置在< head>头部之间
style – type 声明css的作用类型
p{ 样式属性} p是作用域, 也可以是 <table><input> 等等的其他标签, p只不过是一个例子
文档内继承会比段内继承的优先级低, 优先执行段内的,所以 同时<p>的样式, 第一个原文执行了全局style, 第二个执行了段内style
-
文档外继承
- 需要先建立一个额外的后缀名为css文件
- 编辑文件,建立css 样式
- 作用文件 引用 css文件样式
@import 叠加多层样式. 样式
层叠样式: 引用的机制,使得样式变成了一个仓库, 想调用的时候调用, 想个性化的时候又可以在当前页面用单独设置.
1.越是内层的样式优先级越高, 修改内层的不会影响外层要引用的.
2.外层和∪内层样式的总和(集合) 才是表现出来的样式.
3.外层∩内层, 样式冲突(交集), 优先级是: 段内继承>文件内继承>文件外继承>标签样式
补充:
1.标签样式 优先级最低的样式,也就是一些标签本来隐含的样式, 例如<b>加粗, h1-h6 这些.
<b>本来隐含加粗的设定, 但是因为优先级的问题, 它属于最低级的,所以就覆盖掉了.
- 指定继承的标签受影响, 但它的子标签受影响吗?
指定某标签样式继承, 会有以下变化:
a. 被指定的被继承了
b. 被指定的子标签只继承(文字\颜色\字体等)
c. 被指定的子标签不继承布局样式! 如果要使用, 则需要用inherit.
<p>有边框<b>无边框</b>有边框</p>
boarder 是边框的意思.
当没有inherit前, 无边框部分就不会因为<p>在head声明了样式有边框而影响到<b>里面有1px红色边框
如果非要在<b>里面也要加边框,就要用inherit强制继承.(如上图)
3.head 文件内样式顺序优先
4.越级 让文件head样式优先于段内样式
important 相当于点歌用了置顶功能….无耻吧