html 与浏览器 知识集锦一

部分内容摘自HTML(超文本标记语言)

参考文章面试官:前端跨页面通信,你知道哪些方法

参考文章「面试」-路由之hash和history


一、行内元素和块级元素

行内元素(inline)

常见的元素:
- a (锚点)
- b (加粗)
- i (斜体)
- span (常用内联容器,定义文本内区块)
- lable (标记)

特性

  • 不可设置宽高及上下内外边距(左右内外边距设置有效)
  • 行内元素高度由内容自动填充
  • 可以与其他行内元素及行内块元素在同一行

块级元素(block)

常见的元素: divph1h6liulolformtable

特性

  • 可以设置宽高及内外边距
  • 独占一行(前后均换行)
  • 不设置宽度时,宽度默认为父元素的宽度不设置高度,高度为内容撑开的高度

可替换元素 (inline-block)

可替换元素的展现效果不是由 CSS 来控制的。这些元素是一种外部对象,它们外观的渲染,是独立于 CSS 的;
内容不受当前文档的样式的影响。CSS 可以影响可替换元素的位置,但不会影响到可替换元素自身的内容

实际效果等同于 行内块级元素display: inline-block

常见的元素: image类型的input、img、iframe、video、embed

特性

  • 可以设置宽高及内外边距
  • 可以与其他行内元素及行内块级元素在同一行
  • 不设置宽高时,由加载的替换内容宽高决定当前宽高

互相转换方式

display: inline; /* 转为行内元素 */
display: inline-block;/* 转为行内块级元素 */
display: block; /* 转为块级元素 */

二、DOM树

DOM 和 DOM树

DOM (Document Object Model) 的全称是文档对象模型,它可以以一种独立于平台和语言的方式访问和修改一个文档的内容和结构

HTMLDocument 为根节点,其余节点为子节点,组织成一个树的数据结构的表示就是 DOM树

DOM 树如何生成

HTML 解释器的工作就是将网络或者本地磁盘获取的 HTML 网页和资源从字节流解释成 DOM 树结构

字节流,经过解码之后是字符流,然后通过词法分析器会被解释成词语(Tokens),之后经过语法分析器构建成节点,最后这些节点被组建成一颗 DOM 树

  • 词法分析: HTMLTokenizer
  • 词语验证:XSSAuditor
  • 从词语到节点: HTMLDocumentParser 类、 HTMLTreeBuilder
  • 从节点到 DOM 树: HTMLConstructionSite

在 DOM 树构建完成后,WebKit 会触发 “DOMContentLoaded

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值