美文网首页
CSS新增属性

CSS新增属性

作者: 過尽千帆_YL | 来源:发表于2021-04-22 22:40 被阅读0次

1.属性选择器

选择符 简介
e[att] 选择具有att属性的e元素
e[att='val'] 选择具有att属性的且属性值等于val的e元素
e[att^='val'] 匹配具有att属性且值以val开头的e元素
e[att$='val'] 匹配具有att属性且值以val结尾的e元素
e[att*='val'] 匹配具有att属性且值且含有val的e元素

示例代码:

     /* 只选择 type =text 文本框的input 选取出来 */
input[type=text] {
    color: pink;
}
/* 选择首先是div 然后 具有class属性 并且属性值 必须是 icon开头的这些元素 */
div[class^=icon] {
    color: red;
}
/* 选择首先是section 然后 具有class属性 并且属性值 必须是 data结尾的这些元素 */
section[class$=data] {
    color: blue;
}
  • 属性选择器,按照字面意思,都是根据标签中的属性来选择元素
  • 属性选择器可以根据元素特定属性的来选择元素。 这样就可以不用借助于类或者id选择器
  • 属性选择器也可以选择出来自定义的属性
  • 注意:类选择器、属性选择器、伪类选择器,权重为 10。

2.结构伪类选择器

结构伪类选择器主要根据文档结构来选择器元素, 常用于根据父级选择器里面的子元素

2.1 E:first-child

匹配父元素的第一个子元素E

    ul li:first-child{
      background-color: red;
    }
  </style>

  <ul>
    <li>列表项一</li>
    <li>列表项二</li>
    <li>列表项三</li>
    <li>列表项四</li>
  </ul>
  /* E:last-child  则是选择到了最后一个li标签 */

2.2 E:nth-child(n)

  • 匹配到父元素的第2个子元素
    ul li:nth-child(2){}
  • 匹配到父元素的序号为奇数的子元素
    ul li:nth-child(odd){} odd 是关键字 奇数的意思(3个字母 )
  • 匹配到父元素的序号为偶数的子元素
    ul li:nth-child(even){} even(4个字母 )
  • 匹配到父元素的前3个子元素
    ul li:nth-child(-n+3){}

2.3 E:nth-child 与 E:nth-of-type 的区别

示例代码:

<style>
    ul li:nth-child(2){
      /* 字体变成红色 */
        color: red;
    }

    ul li:nth-of-type(2){
      /* 背景变成绿色 */
      background-color: green;
    }
  </style>


  <ul>
    <li>列表项一</li>
    <p>乱来的p标签</p>
    <li>列表项二</li>
    <li>列表项三</li>
    <li>列表项四</li>
  </ul>
  • E:nth-child(n) 匹配父元素的第n个子元素E,也就是说,nth-child 对父元素里面所有孩子排序选择(序号是固定的) 先找到第n个孩子,然后看看是否和E匹配
  • E:nth-of-type(n) 匹配同类型中的第n个同级兄弟元素E,也就是说,对父元素里面指定子元素进行排序选择。 先去匹配E ,然后再根据E 找第n个孩子

总结

  • 结构伪类选择器一般用于选择父级里面的第几个孩子
  • nth-child 对父元素里面所有孩子排序选择(序号是固定的) 先找到第n个孩子,然后看看是否和E匹配
  • nth-of-type 对父元素里面指定子元素进行排序选择。 先去匹配E ,然后再根据E 找第n个孩子
  • 关于 nth-child(n) 我们要知道 n 是从 0 开始计算的,要记住常用的公式
  • 如果是无序列表,我们肯定用 nth-child 更多
  • 类选择器、属性选择器、伪类选择器,权重为 10

3.伪元素选择器

选择符 简介
::before 在元素内部的前面插入内容
::after 在元素内部的后面插入内容

示例demo:

<style>
    div {
        width: 200px;
        height: 200px;
        background-color: pink;
    }
    /* div::before 权重是2 */
    div::before {
        /* 这个content是必须要写的 */
        content: '我';
    }
    div::after {
        content: '小猪佩奇';
    }
</style>
<body>
    <div>
        是
    </div>
</body>

注意:

  • before 和 after 创建一个元素,但是属于行内元素
  • 新创建的这个元素在文档树中是找不到的,所以我们称为伪元素
  • 语法: element::before {}
  • before 和 after 必须有 content 属性
  • before 在父元素内容的前面创建元素,after 在父元素内容的后面插入元素,伪元素选择器和标签选择器一样,权重为 1

相关文章

  • H5新增 input 标签 属性选择器 结构伪类选择器

    五、新增 input 标签 六、新增表单属性 七、CSS3 属性选择器(上) 什么是 CSS3在 CSS2 的基础...

  • css新增属性

    UI元素伪类选择器 :focus 选择获得焦点的元素 :enabled 被用来指定元素处于可用状态是的样式 :di...

  • CSS新增属性

    1.属性选择器 选择符简介e[att]选择具有att属性的e元素e[att='val']选择具有att属性的且属性...

  • HTML标签-->HTML5新增

    HTML的Form新增属性 HTML新增标签 HTML5新增结构标签 视频和音频 CSS 引入css 基本选择器

  • 前端面试常见问题-持续更新

    一、html&css 1.html5新增的标签属性 2.css3新增的属性 3.position定位 4.浮动 5...

  • CSS盒子模型居中方法

    方法一: 利用margin; 方法二 利用css的 position属性; 方法三 利用css3的新增属性tabl...

  • CSS新增属性2

    1. 盒子模型 CSS3 中可以通过 box-sizing 来指定盒模型,有2个值:即可指定为 content-b...

  • CSS3 动画

    动画属性 动画(animation)是CSS3新增的属性,动画属性可以为元素创建动画,CSS3以前在网页上实现动画...

  • calc计算属性的用法

    calc是CSS3中新增的计算属性。 普通的CSS样式时,计算属性的写法如下: Less中,计算属性的写法如下: ...

  • 【CSS3盒模型display:box的应用】

    CSS3新增属性 “display:box;”和“box-flex:数值”是css3新添加的盒子模型属性,它的出现...

网友评论

      本文标题:CSS新增属性

      本文链接:https://www.haomeiwen.com/subject/grihrltx.html