CSS选择器权重

一、选择器类型

1、ID  #id

2、class  .class

3、标签  p

4、通用  *

5、属性  [type=“text”]

6、伪类  :hover

7、伪元素  ::first-line

8、子选择器、相邻选择器

二、各选择器的权重

1、第一等:内联样式如: style=””,权值为1000。
2、第二等:ID选择器,如:#content,权值为0100。
3、第三等:类,伪类和属性选择器,如.content,权值为0010。
4、第四等:元素选择器和伪元素选择器,如div p,权值为0001。
5、 第五等:通配符、子选择器、相邻选择器。如*、>、+,权值为0000。

display常见的值,包括的标签

-inline:span、a、strng、em
-block:div、ul、li、p、form
-inline-block:img
-none

注:display:none和visibility: hidden的区别:

1、display:none是彻底消失,不在文档流中占位,浏览器也不会解析该元素;visibility:hidden是视觉上消失了,可以理解为透明度为0的效果,在文档流中占位,浏览器会解析该元素。
2、display:none切换显示时页面会产生回流,而visibility切换显示时则不会引起回流。

position: 的属性以及relative与absolute的区别。

position的属性:

1、static:默认值。没有定位,
2、relative :生成相对定位的标签,相对于自己位置进行变换。
3、absolute:相对于标签本身第一个position为非 static父元素进行定位,标签通过 “left”, “top”, “right” 以及 “bottom” 样式属性进行定位。如果该标签所在的父标签均没有设置position为非 static,则相对于浏览器窗口进行定位,但是此时元素会随着滚动调的滑动而滑动。
4、fixed生成绝对定位的标签,相对于浏览器窗口进行定位,此时元素不会随着滚动调的滑动而滑动。元素通过 “left”, “top”, “right” 以及 “bottom” 属性进行定位。
5、inherit规定应该从父元素继承 position 属性的值。

relative与absolute的区别:

absolute不受父元素里的其他元素影响,而relative会受到父元素里的其他元素影响。

px,em,rem:

1、px是固定的像素,一旦设置了就无法因为适应页面大小而改变。

2、em和rem相对于px更具有灵活性,他们是相对长度单位,意思是长度不是定死了的,更适用于响应式布局。

3、em是相对于其父元素来设置字体大小的,一般都是以的“font-size”为基准。这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小。而Rem是相对于根元素,这样就意味着,我们只需要在根元素确定一个参考值。

em和rem的区别一句话概括:em相对于父元素,rem相对于根元素。

标准盒模型/IE盒模型的区别:

content的不同,IE盒模型的content包括border、padding
而标准盒模型的content则不包括;

引入外部字体的方法:

@font-face {
font-family: SketchRockwell; /* 说明调用来的字体名字 /
src: url(‘SketchRockwell.ttf’); /
表明字体文件路径 */
}

什么是浮动:

浮动是指使元素脱离文档普通流,漂浮在普通流之上。

清除浮动的方法:

使用after伪元素清除浮动:

.clearfix:after{
content: “”; /* 空 * /
display: block;/* 伪元素是行内元素 换为块级元素 * /
height: 0;
clear:both; /* 清除浮动*/
visibility: hidden;
}

Margin塌陷或合并

Margin塌陷的具体表现是:当两个元素嵌套到一起时,外层盒模型的margin-top取两个元素中margin-top较大的值。
margin合并的具体表现是:当两个元素并列时,两者相隔的外边距取的是两者所设置margin的最大值。

解决方法:

1、塌陷问题
方法一:在父类标签设置overflow:hidden;属性
方法二:给父类标签重新设置border属性。
2、合并问题
方法一:使用绝对定位消除合并。
方法二:使用inline-block消除合并

水平居中:

1、行内元素水平居中:这里行内元素是指文本text、图像img、按钮超链接等,只需给父元素设置text-align:center
2、块级元素水平居中:定宽块级元素水平居中,只需给需要居中的块级元素加margin:0 auto。

垂直居中:

1、提前知道被居中块级元素的尺寸:使用绝对定位和负外边距对块级元素进行垂直居中。
2、提前不知道被居中的元素的尺寸:使用绝对定位和transform。
3、元素可以通过设置display:flex;将其指定为flex布局的容器,指定好了容器之后再为其添加align-items属性,该属性定义项目在交叉轴(这里是纵向周)上的对齐方式,可能的取值有五种,分别如下:
flex-start:交叉轴的起点对齐;flex-end:交叉轴的终点对齐;
center:交叉轴的中点对齐;baseline项目第一行文字的基线对齐;
strech(该值是默认值):如果项目没有设置高度或者设置为auto,那么将占满整个容器的高度。
4、给父元素设置display:flex,设置好之后改变主轴的flex-direction:column,该属性可能的取值有四个,分别如下:
row(该值为默认值):主轴为水平方向,起点在左端;
row-reverse,主轴是水平方向,起点在有端;
column主轴为垂直方向,起点在上沿;
column-reverse:主轴为垂直方向,起点在下沿。
5、使用 display:table-cell 和 vertical-align 对容器里的文字进行垂直居中。

水平垂直居中

1、相对定位加绝对定位,父元素加相对定位,子元素加绝对定位。
2、先给父级元素设置水平居中,再给当前垂直的元素转换成行内块元素和垂直居中,在元素的后面不加回车,加上同级元素span,并设置此参照物的高度等于父级元素100%

HTML常见问题整理1相关推荐

  1. 【环信IM集成指南】iOS端常见问题整理(1)

    1.集成IM如何自定义添加表情组 集成环信IM自定义添加表情组 - IM Geek开发者社区-移动开发者社区-开源社区-IM Geek官网 2.旧版音视频与EaseCallKit兼容升级方案 旧版音视 ...

  2. 【环信IM集成指南】iOS端常见问题整理(2)

    [环信IM集成指南]iOS端常见问题整理(1-15) 16.后端该如何操作用户上麦 后端无法直接控制让谁上麦,所以只能通过发送CMD消息的方式来和移动端进行交互,移动端根据逻辑指令去操作 17.使用[ ...

  3. 电脑常见问题整理 过年送父母的礼物

    电脑常见问题整理 过年送父母的礼物 2012年01月09日 1,了解电脑死机的原因:[病毒木马感染[CMOS设置不当][系统文件的误删除][动态链接库文件(DLL)丢失][硬盘剩余空间太少或碎片太多] ...

  4. TS 常见问题整理(60多个,持续更新ing)

    TS 常见问题整理(60多个,持续更新ing) https://cloud.tencent.com/developer/article/1593335

  5. Android 笔试/面试,常见问题整理

    Android 笔试/面试,常见问题整理 Android学习书籍下载的网址:http://pan.baidu.com/s/1slCSUcP 上面网盘里面的书籍都是PDF格式的,有面试宝典,疯狂java ...

  6. 浙江工商大学813理学统计学复试常见问题整理总结——数理统计部分

    大家好!本人是去年上岸浙江工商大学,本科是江苏省的一本,专业课成绩在135+(可以去官网查证).本人根据去年线上复试的个人情况并结合其他一些上岸的同学在复试中被问到的专业课问题进行整理汇总了如下的浙江 ...

  7. 三年 Git 使用心得 常见问题整理

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:秋天不落叶,来源:民工哥技术之路 Git 流程图 Workspac ...

  8. Endnote 常见问题整理

    ---转自<Endnote FAQ整理 ing> http://biotech.ustc.edu.cn/forum/forum.php?mod=viewthread&tid=115 ...

  9. 个推消息推送iOS版常见问题整理

    为了更好地服务开发者,此次我们针对个推消息推送iOS版使用中可能出现的一些常见问题做了整理,提供了一些比较方便掌握的解决方法,希望能帮助到大家. 1. iOS推送流程是什么样的? iOS下发的消息分两 ...

  10. 个推消息推送Android版常见问题整理

    为了更好地服务开发者,此次我们针对个推Android推送使用中可能出现的一些常见问题做了整理,提供了一些比较方便掌握的解决方法,希望能帮助到大家. 1. Android推送和iOS推送调用模板的区别? ...

最新文章

  1. CDN加速技术和云计算
  2. saltstack模块 --cp
  3. Dijkstra 最短路径算法详解 无向图
  4. C++中default标识的构造函数的说明
  5. java jexl 工具类_jexl表达式解析、计算工具类.md
  6. GDAL打开mdb文件失败解决方法
  7. Docker mysql
  8. vue $slot基本用法
  9. python read文件的r和rb的区别
  10. dockerfile文件名_第八章 Dockerfile文件解析(二)
  11. Unity 之 自定义编辑器布局
  12. 菜鸟教程:零基础HTML入门
  13. 掌握c语言的运行环境,c语言考试大纲
  14. python如何查看opencv当前版本
  15. 2、★☆STM32的智能浇水补光系统√☆★
  16. 图片像素低,图片模糊怎么变清晰?
  17. 先手获胜逻辑题_最获胜的A / B测试结果是否令人误解?
  18. 智能家居十大必备功能 乐享真正智能生活
  19. xlrd,xlwt操作excel个人总结 自动化办公
  20. 【ESP 保姆级教程】玩转emqx认证篇③ ——认证安全之使用 MySQL 的密码认证

热门文章

  1. “一键GHOST”傻瓜式系统备份与恢复
  2. word文档里四级目录无法显示
  3. rcond--矩阵可逆的条件数估值
  4. php+js扫码枪实现签到的功能
  5. python写一个表白程序带时间_python如何写出表白程序
  6. iphoneX、iPhone12尺寸
  7. Cortex M3 Bit-banding简介
  8. Stm32cubeIDE1.8 增加代码补齐
  9. Android:一个妹zhi的学习之路_心得体会
  10. hexo博客搭建及主题优化(一)