innerHTML在IE中的问题及解决方案

在低级IE下用innerHTML获取标签文本时,得到的字符串会有"标签会变成大写","属性值引号丢失"等问题。网上已有修正兼容IE的获取innerHTML方法。使用过程发现挺好的. function getInnerHTML(elm){ var content = elm.innerHTML; if(!document.all) return content; var regOne = /(\s+\w+)\s*=\s*([^<>"\s]+)(?=[^<>]*\/>)/ig; var regTwo = /"'([^'"]*)'"/ig; content = content.replace(regOne,'$

HTML的文档流与布局

1 概述 HTML 是一种用于显示的标记语言,最初用于显示文字和图片,而后随着互联网的发展,HTML 加入更多的显示功能,并引入了 CSS 和 JavaScript 作为辅助,从而可以达到不弱于出版物的视觉效果。 就流程而言,现代浏览器普遍采用了解析、布局和渲染的三步方案:首先将HTML源文档解析为 DOM 树(同时 CSS 源文档也会被解析为样式表,JavaScript 会被执行);而后将 DOM 树和样式表揉合成为渲染树,通过先序遍历的方式,根据节点属性和样式表规则指定的配置,决定各个渲染节点的位置和大小;最后在由位置和大小确定的矩形框内,根据节点内容和属性配置,画出视觉效果。 本文将分析现代浏览器中共通的布局策略,从对早期HTML文档的布局方式开始,逐步增加功能,直至一个现代网页。在有关节点的类型问题上,本文使用CSS观点,