前端CSS高频面试题---1.CSS选择器、优先级、以及继承属性

微信图片_20210330085048.jpg

一、选择器

CSS选择器是CSS规则的第一部分

它是元素和其他部分组合起来告诉浏览器哪个HTML元素应当是被选为应用规则中的CSS属性值的方式

选择器所选择的元素,叫做“选择器的对象”

我们从一个HTML结构开始

关于 CSS属性选择器常用的有:
  • id选择器(#box),选择id为box的元素
  • 类选择器(.one),选择类名为one的所有元素
  • 标签选择器(div),选择标签为div的所有元素
  • 后代选择器(#box div),选择id为box元素内部所有的div元素
  • 子选择器(.one>one_1),选择父元素为.one的所有.one_1的元素
  • 相邻同胞选择器(.one+.two),选择紧接在.one之后的所有.two元素
  • 群组选择器(div,p),选择div、p的所有元素
还有一些使用频率相对没那么多的选择器:
  • 伪类选择器

    • :link :选择未被访问的链接
    • :visited:选取已被访问的链接
    • :active:选择活动链接
    • :hover :鼠标指针浮动在上面的元素
    • :focus :选择具有焦点的
    • :first-child:父元素的首个子元素
  • 伪元素选择器

    • ::first-letter :用于向文本的首字母添加特殊样式
    • ::first-line :用于向文本的首行添加特殊样式
    • ::before : 可用于在元素内容之前插入一些内容
    • ::after : 可用于在元素内容之后插入一些内容
    • ::selection 伪元素匹配用户选择的元素部分。
  • 属性选择器

    • [attribute] 选择带有attribute属性的元素
    • [attribute=value] 选择所有使用attribute=value的元素
    • [attribute~=value] 选择attribute属性包含value的元素
    • [attribute|=value]:选择attribute属性以value开头的元素

二、优先级

!important > 内联 > ID选择器 > 类选择器 > 标签选择器

具体可参考:https://developer.mozilla.org/zh-CN/docs/Web/CSS/Specificity

三、继承属性

css中,继承是指的是给父元素设置一些属性,后代元素会自动拥有这些属性

关于继承属性,可以分成:

  • 字体系列属性

    • font:组合字体
    • font-family:规定元素的字体系列
    • font-weight:设置字体的粗细
    • font-size:设置字体的尺寸
    • font-style:定义字体的风格
    • font-variant:偏大或偏小的字体
  • 文字系列属性

    • text-indent:文本缩进
    • text-align:文本水平
    • line-height:行高
    • word-spacing:增加或减少单词间的空白
    • letter-spacing:增加或减少字符间的空白
    • text-transform:控制文本大小写
    • direction:规定文本的书写方向
    • color:文本颜色
  • 元素可见性

    • visibility
  • 表格布局属性

    • caption-side:定位表格标题位置
    • border-collapse:合并表格边框
    • border-spacing:设置相邻单元格的边框间的距离
    • empty-cells:单元格的边框的出现与消失
    • table-layout:表格的宽度由什么决定
  • 列表属性

    • list-style-type:文字前面的小点点样式
    • list-style-position:小点点位置
    • list-style:以上的属性可通过这属性集合
  • 引用

    • quotes:设置嵌套引用的引号类型
  • 光标属性

    • cursor:箭头可以变成需要的形状
继承中比较特殊的几点:
  • a 标签的字体颜色不能被继承
  • h1-h6标签字体的大下也是不能被继承的
无继承的属性
  • display
  • 文本属性:vertical-align、text-decoration
  • 盒子模型的属性:宽度、高度、内外边距、边框等
  • 背景属性:背景图片、颜色、位置等
  • 定位属性:浮动、清除浮动、定位position等
  • 生成内容属性:content、counter-reset、counter-increment
  • 轮廓样式属性:outline-style、outline-width、outline-color、outline
  • 页面样式属性:size、page-break-before、page-break-after

你可能感兴趣的:(前端CSS高频面试题---1.CSS选择器、优先级、以及继承属性)