overflow 原理


块格式化上下文是css可视化渲染的一部分,它是一块区域,规定了内部块盒的渲染方式,以及浮动相互之间的影响关系,当元素设置了overflow 样式且值不为visible时,元素就构建了一个BFC,BFC在计算高度时,内部浮动元素的高度也计算在内,也就是说技术BFC区域内只有一个浮动元素,BFC的高度也不会发生坍塌,所以达到了清除浮动的效果。

画出三角形


div {
width: 0px;
height: 0px;
border-top: 10px solid red;
border-right: 10px solid transparent;
}

link标签和import的区别


link标签属于html标签,import是css提供的,页面被加载时,link会被同时加载,而import引用的css会等到页面加载结束后加载,link方式的样式权重高于import。

说一说BFC什么?


BFC块级格式化上下文,页面的隐含属性,全名:Block Formattin Context,用于清除浮动,防止margin重叠等。

当开启BFC以后,元素会具备以下特性:

  1. 父元素的垂直外边距不会和子元素重叠
  2. 开启BFC的元素不会被浮动元素所覆盖
  3. 开启BFC的元素可以包含浮动的子元素

多行元素的文本省略号


display:  -webkit-box;

-webkit-box-orient: vertical;

-webkit-line-clamp: 3;

overflow: hidden;

visivility=hidden,opacity=0,display:none三者之间的区别


  • opacity=0,该元素隐藏,不改变页面布局,元素绑定事件后也会被触发。
  • visivility=hidden,该元素隐藏,不改变页面布局,元素绑定事件后不会被触发。
  • display=none,元素隐藏,会改变页面布局。

inline-block、inline和block的区别


  • block是块级元素,能设置宽高,margin、padding水平垂直方向都有效。
  • inline 设置宽高无效,margin在竖直方向上无效,padding在4个方向上都有效。
  • inline-block 能设置宽高,margin、padding4个方向上均有效。

了解重绘和重排吗,知道怎么去减少重绘和重排吗


DOM 的变化影响到了预算的几何属性,比如宽高,浏览器重新计算元素的几何属性,其他元素的几何属性也会受到影响,浏览器需要重新构造渲染树,这个过程称之为重排;浏览器将受到影响的部分重新绘制在屏幕上的过程称为重绘。

引起重排重绘的原因:

  • 添加或者删除DOM元素
  • 元素尺寸位置改变
  • 浏览器页面初始化
  • 浏览器窗口大小发生改变

重排一定导致重绘,重绘不一定导致重排

减少重绘重排的方法:

  • 不在布局信息改变时做DOM查询
  • 对于多次重排的元素,比如动画,使用绝对定位使其脱硫文档流,不影响其他元素。

2021前端面试css(三)的更多相关文章

  1. 前端面试——css篇

    css盒子模型 在W3C模型中: 总宽度 = margin-left + border-left + padding-left + width + padding-right + border-rig ...

  2. [Web 前端] 006 css 三种页面引入的方法

    1. 外链式 用法 step 1: 在 html 文档的 head 头部分写入下方这句话 <link rel="stylesheet" href="./xxx.cs ...

  3. [Web 前端] 015 css 三种元素的介绍

    1. 块元素,内联元素,内联块元素 元素就是标签 布局中常用的有三种标签 块元素 内联元素 内联块元素 1.1 块元素 也称为行元素 布局中常用的标签,如 div.p.ul.li.h1~h6.dl.d ...

  4. 前端面试 CSS三大特性

    CSS的三大特性 1.层叠性 代码由上向下执行,相同选择器设置到同一元素上,样式冲突的,会执行比较靠近html的样式,样式不冲突的情况下不影响 代码如下 <!DOCTYPE html> & ...

  5. web前端面试试题总结---css篇

    CSS 介绍一下标准的CSS的盒子模型?低版本IE的盒子模型有什么不同的? (1)有两种, IE 盒子模型.W3C 盒子模型: (2)盒模型: 内容(content).填充(padding).边界(m ...

  6. 史上前端面试最全知识点(附答案)---html & js & css

    史上前端面试最全知识点(附答案) 一.html & js & css 1.AMD和CMD是什么?它们的区别有哪些? AMD和CMD是二种模块定义规范.现在都使用模块化编程,AMD,异步 ...

  7. 前端读者 | 前端面试基础手册(HTML+CSS)

    本文来自@羯瑞:希望前端面试基础手册能帮助要找工作的前端小伙伴~~ HTML 前端需要注意哪些SEO? 合理的title.description.keywords:搜索对着三项的权重逐个减小,titl ...

  8. 前端面试常考知识点---CSS

    前端面试常考知识点---js 1.CSS3的新特性有哪些 点我查看 CSS3选择器 . CSS3边框与圆角 CSS3圆角border-radius:属性值由两个参数值构成: value1 / valu ...

  9. 前端js,css文件合并三种方式,bat命令

    前端js,css文件合并三种方式,bat命令 前端js文件该如何合并三个方式如下:1. 一个大文件,所有js合并成一个大文件,所有页面都引用它.2. 各个页面大文件,各自页面合并生成自己所需js的大文 ...

随机推荐

  1. 零基础学习java------35---------删除一个商品案例,删除多个商品,编辑(修改商品信息),校验用户名是否已经注册(ajax)

    一. 删除一个商品案例 将要操作的表格 思路图  前端代码 <%@ page language="java" contentType="text/html; cha ...

  2. 解决springboot序列化 json数据到前端中文乱码问题

    前言 关于springboot乱码的问题,之前有文章已经介绍过了,这一篇算是作为补充,重点解决对象在序列化过程中出现的中文乱码的问题,以及后台报500的错误. 问题描述 spring Boot 中文返 ...

  3. MBean代码例子

    public class ServerImpl { public final long startTime; public ServerImpl() { startTime = System.curr ...

  4. Centos 常用指令

    1.*.tar 用 tar  xvf 解压 2.*.gz 用 gzip  d或者gunzip 解压 3.*.tar.gz和*.tgz 用 tar xzf 解压 4.*.bz2 用 bzip2 d或者用 ...

  5. 快速上手ANTLR

    回顾前文: ANTLR 简单介绍 ANTLR 相关术语 ANTLR 环境准备 下面通过两个实例来快速上手ANTLR. 使用Listener转换数组 完整源码见:https://github.com/b ...

  6. CF173A Rock-Paper-Scissors 题解

    Content 有 \(2\) 个人在玩石头剪刀布,已知他们的出手都有一定的规律,求 \(n\) 局之后两个人各输了几局. 数据范围:\(1\leqslant n\leqslant 2\times 1 ...

  7. JavaScript数组的push()等方法的使用

    数组是值得有序集合.每个值在数组中有一个位置,用数字表示,叫做索引.JavaScript数组是无类型的:数组元素可以是任何类型,而且同一个数组中可以存在不同类型元素,甚至可以是对象或是其他数组,这就可 ...

  8. redis pipeset发布订阅

    #!/usr/bin/env python # Author:Zhangmingda import redis,time pool = redis.ConnectionPool(host='192.1 ...

  9. props 使用场景 及 布局提升

    一对一一边写html 一边写css一小块为单位html csscss html整块单位html csscss html react/first-react/src/views/Wk/index.jsx ...

  10. SpringBoot项目 maven打包时候提示程序包xxx不存在

    A模块依赖B模块 A打包的时候会报程序包xxx不存在 这时候我们看下B模块的pom.xml文件是否加了 <build> <plugins> <plugin> < ...