2021-10-25 面试题:css(一) 标准盒与怪异盒,css选择符,可以继承的属性有哪些,css优先级,css3新增伪类

本文主要是介绍2021-10-25 面试题:css(一) 标准盒与怪异盒,css选择符,可以继承的属性有哪些,css优先级,css3新增伪类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

        • 1.介绍一下标准的CSS的盒子模型?低版本IE的盒子模型有什么不同?
        • 2.标准盒子模型和怪异盒子模型的区别?
        • 3.CSS选择符有哪些?哪些属性可以继承?
        • 4.CSS优先级算法如何计算?
        • 5.CSS3新增伪类有哪些?

1.介绍一下标准的CSS的盒子模型?低版本IE的盒子模型有什么不同?
  • 盒子模型:W3C盒子模型和IE盒子模型,实际上就是标准盒模型和怪异盒模型
  • 构成:内容content+内边距padding+外边距margin+边框border
  • 低版本IE的盒子模型:其content部分会把padding和border部分也算进去
2.标准盒子模型和怪异盒子模型的区别?

1.标准盒模型的width为content的宽度,标准盒模型下的盒子大小为content+padding+margin+border
怪异盒模型的width为content+padding+border,怪异盒模型下的盒子大小为width+margin
2.box-sizing属性设置为border-box即可设置怪异盒子模型,在改变padding的时候,边框盒子会自动向内压缩内容区的宽高
(因为width=padding+border+content,width不变)
3.怪异盒模型与标准盒模型的区别
用途:标准盒子模型主要用于PC端,怪异盒子模型主要用于手机端。
原理:标准盒子模型的大小是由内到外的,由内部决定外部的大小;而怪异盒模型是由外而内的。
总结:

标准盒子模型(content-box):内容就是盒子的边界
IE盒子模型(border-box):边框才是盒子边界标准盒子模型(content-box):元素的宽度width=内容宽度
IE盒子模型(border-box):元素的宽度width=内容宽度 + padding + border

理解:标准盒模型的宽度是内容的宽度是常见的块级元素盒子,怪异盒模型的width=content+padding+border,如果padding改变,会压缩内容的宽度;对标准盒模型来说内容时盒子的边界,对怪异盒模型来说边框才是盒子的边界

3.CSS选择符有哪些?哪些属性可以继承?
  • CSS选择符:id,类(class),标签(div),相邻(div+p),子(ul>li),后代(div a),通配符(*),属性(input[type=“text”]),伪类(a:hover li:nth-child(n))
  • 可继承的样式:ul,li,dt,dl,dd,font-size,font-family,color
  • 不可继承的样式:width,height,border,padding,margin
4.CSS优先级算法如何计算?

1.优先级:!important>内联>id>class>tag>*
2.就近原则:权重相同时样式定义较近的为准
3.覆盖:以最后载入的为准

5.CSS3新增伪类有哪些?
p:first-of-type 选择属于其父元素的首个 <p> 元素的每个 <p> 元素。
p:last-of-type  选择属于其父元素的最后 <p> 元素的每个 <p> 元素。
p:only-of-type  选择属于其父元素唯一的 <p> 元素的每个 <p> 元素。
p:only-child        选择属于其父元素的唯一子元素的每个 <p> 元素。
p:nth-child(2)  选择属于其父元素的第二个子元素的每个 <p> 元素。
:not(p) 匹配非p元素
:after          在元素之前添加内容,也可以用来做清除浮动。
:before         在元素之后添加内容
:enabled   和 :disabled       控制表单控件的禁用状态。
:checked        单选框或复选框被选中。

这篇关于2021-10-25 面试题:css(一) 标准盒与怪异盒,css选择符,可以继承的属性有哪些,css优先级,css3新增伪类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/221209

相关文章

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript

Vue3使用router,params传参为空问题

《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

CSS Padding 和 Margin 区别全解析

《CSSPadding和Margin区别全解析》CSS中的padding和margin是两个非常基础且重要的属性,它们用于控制元素周围的空白区域,本文将详细介绍padding和... 目录css Padding 和 Margin 全解析1. Padding: 内边距2. Margin: 外边距3. Padd

CSS will-change 属性示例详解

《CSSwill-change属性示例详解》will-change是一个CSS属性,用于告诉浏览器某个元素在未来可能会发生哪些变化,本文给大家介绍CSSwill-change属性详解,感... will-change 是一个 css 属性,用于告诉浏览器某个元素在未来可能会发生哪些变化。这可以帮助浏览器优化

CSS去除a标签的下划线的几种方法

《CSS去除a标签的下划线的几种方法》本文给大家分享在CSS中,去除a标签(超链接)的下划线的几种方法,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧... 在 css 中,去除a标签(超链接)的下划线主要有以下几种方法:使用text-decoration属性通用选择器设置:使用a标签选择器,将tex