博客列表 >CSS基本语法-引入方式-模块化-选择器的学习

CSS基本语法-引入方式-模块化-选择器的学习

波元的PHP学习
波元的PHP学习原创
2020年12月17日 23:48:54617浏览

css的基本语法

任何元素想引入到html中,必须要使用一个适当的标签。
通过style标签引入的css规则,仅适用于当前的页面(html文档)。
CSS:层叠样式表,用来设置页面中元素的样式,布局。
选择器+声明块=规则

  1. h1 { /*声明:属性和值组成*/color:violet;
  2. border:1px solid #000;
  3. }

css引入方式

1、内部样式:

< style > 仅对当前文档的元素有效,使用style标签。

2、 外部样式:

外部样式表/公共样式表/ 适用于所有引入了这个CSS样式表的HTML文档。使用LINK标签
使用link标签引入外部公共样式表。

3、行内样式:属性设置样式

  1. <h1 style="color:teal">文字</h1>

样式表的模块化

导入公共页眉、页脚、

  1. <sytle>
  2. @import url(css/header.css)
  3. @import'css/footer.css'
  4. <style>

将上述代码写入STYLE.CSS文件,再使用LINK标签导入。

cssr模块化

将公共样式部分进行分离,并创建一些独立的样式表来保存它。
使用@import指令将这些独立的公共样式表引入到指定的CSS文档或一标签中。

-选择器1:简单选择器 分为标签、属性(ID CLASS)两大类

  • 标签选择器,返回一组

  • 类选择器:返回一组

  • ID选择器
    id选择器使用# 因为浏览器不检查ID的唯一性,必须 由开发者自行保证。

    1. <style>
    2. li[class="on"]{background-color:violet;}
    3. .on{background-color:violet;}
    4. <style>
    5. <body>
    6. <ul>
    7. <li id="foo">test</li>
    8. <li class="on">test</li>
    9. <li id="foo">test</li>
    10. <li class="on" >test</li>
    11. <li class="on" >test</li>
    12. </ul>
    13. <body>

-选择器2:上下文选择器

因为HTML是一个结构化的文档:每一个元素在文档中有确切的位置。
所以根据元素的上下文环境来选择是完全没有问题的。

1、后代选择器:选中所有层级
ul li{ackground-color:lightbule;}

2、子元素选择器:仅父子层级
body>ul>li{background-color:teal;}
3、同级相邻选择器:仅选中与之相邻的第一个兄弟元素
.start+li{bacground-color:lightgreen;}

4、同级所有选择器:选中与之相邻的后面所有兄弟元素
.start~li{}

1.空格:所有层级
2.> :父子级
3.+ :相邻的兄弟
4.~ :所有相邻兄弟

  1. <li>test1</li>
  2. <li class=“start”>test2</li>
  3. <li>test3</li>
  4. <li>test4
  5. <ul>
  6. <li>test4-1</li>
  7. <li>test4-2</li>
  8. <li>test4-3</li>
  9. </ul>
  10. </li>
  11. </ul>

伪类选择器:结构相关,难点重点。

1、匹配任意位置的元素 : :nth-of-type(an+b)
an+b: an是起点, b是偏移量, n=(0,1,2,3…)
ul li:nth-of-type(0n+3){ background-color:violet;}
0乘任何数得0,所以直接写偏移量。

  1. <ul>
  2. <li>test1</li>
  3. <li>test2</li>
  4. <li>test3</li>
  5. <li>test4</li>
  6. <li>test5</li>
  7. <li>test6</li>
  8. <li>test7</li>
  9. <li>test8</li>
  10. <li>test9</li>
  11. <li>test10</li>
  12. </ul>
  13. </body>

ul li:nth-of-type(n+3){background-color:violet} 括号计算出是几就从ul li的第几行开始。

2、反向获取任意位置的元素: nth-last-of-type(an+b)
ul li:nth-last-of-type(-n+3){background} 始终选中最后三个

我只选择倒数第三个ul li:nth-last-of-type(3)

3、选择所有索引为偶数的子元素,2、4、6、8
偶数行关键字: even
ul li:nth-of-type(2n){background}

4、奇数选择
奇数行的关键字:odd
ul li:nth-of-type(2n-1){background}
使用2n+1也是对的。(自己考虑为什么?)

5、选择第一个子元素 first-of-type
nth-of-type(1) 的语法糖 first-of-type
选中最后一个 last-of-type

nth-of-type是最核心的一个选择器,其它的相关选择器都是它的语法糖。

只想匹配父元素中的唯子元素,使用ONLY-OF-TYPE就可以快速实现。
ul li:only-of-type{background}

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议