zoukankan      html  css  js  c++  java
  • 面试中常见知识点总结

    BFC

    BFC(Block formatting context)直译为"块级格式化上下文"。它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level Box如何布局,并且与这个区域外部毫不相干。
    BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。
    

    Formatting context

    Formatting context 是 W3C CSS2.1 规范中的一个概念。它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系和相互作用。最常见的 Formatting context 有 Block fomatting context (简称BFC)和 Inline formatting context (简称IFC)。
    

    哪些元素会生成BFC?

    根元素
    float属性不为none
    position为absolute或fixed
    display为inline-block, table-cell, table-caption, flex, inline-flex
    overflow不为visible
    

    BFC布局规则:

    内部的Box会在垂直方向,一个接一个地放置。
    Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠
    每个元素的margin box的左边, 与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
    BFC的区域不会与float box重叠。
    BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。
    计算BFC的高度时,浮动元素也参与计算。(清除浮动)
    

    ==========

    FOUC

    Flash Of Unstyled Content 无样式内容闪烁
    

    什么是 FOUC(无样式内容闪烁)?你如何来避免 FOUC?

    什么是FOUC(文档样式短暂失效)?
    如果使用import方法对CSS进行导入,会导致某些页面在Windows 下的Internet Explorer出现一些奇怪的现象:以无样式显示页面内容的瞬间闪烁,这种现象称之为文档样式短暂失效(Flash of Unstyled Content),简称为FOUC。
    
    原因大致为:
    1,使用import方法导入样式表。
    2,将样式表放在页面底部
    3,有几个样式表,放在html结构的不同位置。
    
    其实原理很清楚:当样式表晚于结构性html加载,当加载到此样式表时,页面将停止之前的渲染。
    此样式表被下载和解析后,将重新渲染页面,也就出现了短暂的花屏现象。
    
    解决方法:
    使用LINK标签将样式表放在文档HEAD中。
    

    语义化的HTML

    是表现与结构相分离的一种方式
    对搜索引擎友好
    标题 列表 段落 表格 使整体结构清晰,主次分明
    

    提高加载速度

    减少请求:文件压缩,图片合并,
    资源GZip
    css置头,js置尾
    多域名负载均衡
    CDN托管
    服务器配置缓存时间
    

    浏览器模式

    标准模式(strict mode) 采用W3c标准解析
    接近标准模式(almost standards mode) 常用解析方式 有doctype
    混杂模式(quirks mode) 采用自身方式解析 宽松兼容 没有doctype
    js判断
    docoment.compatMode=='strict'
    docoment.compatMode=='quirks'
    

    data-的好处:

    提供自定义的属性
    对象的dataset属性获取
    通过 getAttribute方法获取
    

    css reset的好处:

    重置浏览器的CSS默认属性 使每个浏览器的默认样式显示一致
    

    待续....

  • 相关阅读:
    tensorflow1版本和2版本语句兼容
    Tensorflow暑期实践——基于多隐层神经网络的手写数字识别(全部代码+tensorboard可视化)
    Tensorflow暑期实践——基于多隐层神经网络的手写数字识别
    Tensorflow暑期实践——基于单个神经元的手写数字识别(全部代码)
    Tensorflow暑期实践——波士顿房价预测(全部代码)
    Tensorflow暑期实践——基于单个神经元的手写数字识别
    Tensorflow暑期实践——波士顿房价预测
    (1)什么是自动化测试框架
    c++11关键字noexcept
    CTK-使用ctk框架完成日志、打印、界面插件
  • 原文地址:https://www.cnblogs.com/lt-style/p/4368538.html
Copyright © 2011-2022 走看看