网页制作学习:reflow概念

2016-02-19 23:51 5 1 收藏

清醒时做事,糊涂时读书,大怒时睡觉,无聊时关注图老师为大家准备的精彩内容。下面为大家推荐网页制作学习:reflow概念,无聊中的都看过来。

【 tulaoshi.com - Web开发 】

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

如果对于 reflow 这个概念你还不太清楚或者不知道,请先阅读:

《Notes on HTML Reflow》 《What is a reflow?》 《Gecko:Reflow Refactoring》 《reflow》 《形象化的reflow》 《样式的执行效率-reflow》

Yahoo! 性能工程师 Nicole Sullivan 在最新的文章 《Reflows & Repaints: CSS Performance making your JavaScript slow?》 中总结了导致 reflow 发生的一些因素:

调整窗口大小(Resizing the window) 改变字体(Changing the font) 增加或者移除样式表(Adding or removing a stylesheet) 内容变化,比如用户在input框中输入文字(Content changes, such as a user typing text in
an input box) 激活 CSS 伪类,比如 :hover (IE 中为兄弟结点伪类的激活)(Activation of CSS pseudo classes such as :hover (in IE the activation of the pseudo class of a sibling)) 操作 class 属性(Manipulating the class attribute) 脚本操作 DOM(A script manipulating the DOM) 计算 offsetWidth 和 offsetHeight 属性(Calculating offsetWidth and offsetHeight) 设置 style 属性的值 (Setting a property of the style attribute)

reflow 会引起开销,影响页面的性能,那如何才能做到合理的优化呢?Nicole Sullivan 也提供了部分建议:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)如果想设定元素的样式,通过改变元素的 class 名 (尽可能在 DOM 树的最里层)(Change classes on the element you wish to style (as low in the dom tree as possible)) 避免设置多项内联样式(Avoid setting multiple inline styles) 应用元素的动画,使用 position 属性的 fixed 值或 absolute 值(Apply animations to elements that are position fixed or absolute) 权衡平滑和速度(Trade smoothness for speed) 避免使用 table 布局(Avoid tables for layout) 避免使用CSS的 JavaScript 表达式 (仅 IE 浏览器)(Avoid JavaScript expressions in the CSS (IE only))

详细阅读:

《Reflows & Repaints: CSS Performance making your JavaScript slow?》

原文:http://www.planabc.net/2009/04/13/reflow/

来源:https://www.tulaoshi.com/n/20160219/1630751.html

延伸阅读
标签: Web开发
你正在学习CSS布局吗?是不是还不能完全掌握纯CSS布局?通常有两种情况阻碍你的学习: 第一种可能是你还没有理解CSS处理页面的原理。在你考虑你的页面整体表现效果前,你应当先考虑内容的语义和结构,然后再针对语义、结构添加CSS。这篇文章将告诉你应该怎样把HTML结构化。 另一种原因是你对那些非常熟悉的表现层属性(例如:cel...
标签: Web开发
XML的语法规则既简单又严格,非常容易学习和使用。正因为如此,编写读取和操作XML的软件也是相对容易的事情。 一个XML文档的例子 XML文档使用了自描述的和简单的语法。 ?xml version="1.0" encoding="ISO-8859-1"?  note  toTove/to  fromJani/from  headingReminder/heading  bodyDon&...
标签: Web开发
    三栏布局是目前最常见的网页布局,主要页内容放在中间一栏,边上的两栏放置导航链接之类的内容。基本布局一般是标题之下放置三栏,三栏占据整个页面的宽度,最后在页的底端放置页脚,页脚也占据整个页面宽度。     绝大多数网页设计者都熟悉传统的网页设计技术,用这些技术可以生成带有表格、创建固定宽度...
标签: Web开发
HTML 4.01 HTML是Web的语言,每一个Web开发者都需要对它拥有基本的了解。 HTML 4.01是重要的Web标准,它与HTML 3.2的差异非常之大。 当类似font的标签和color属性被添加到HTML 3.2后,它就逐渐成为开发人员们的一场噩梦。开发那些必须把字体信息加入每个单独页面的网站,其过程成为了一种漫长而昂贵的折磨。 通过HTML 4.01,所有的格式化信息...
标签: Web开发
1.marquee 滚动样式是IE独有的,FF不支持 2.css中的filter效果是IE的私有属性,同样所有的非IE浏览器都不认识的. 3.text-transform:capitalize 强制第一个字母大写;   text-transform:lowercase 强制所有字母小写   text-transform:uppercase 强制所有字母大写 4.按钮陷下去的效果   a:hover { position:relative; top:...

经验教程

264

收藏

93
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部