我已经做了很长一段时间的网络开发人员,帮助我学习的是在视觉上看到发生了什么.
这就是像Aardvark,Web开发人员,Firebug等工具的原因.
但是当我看到壁虎回流视频时,他们只是让我大吃一惊.
那么我的问题是,是否有可能真正调试html(逐步执行每个元素)?还是接近它?
我一直在做的很多是使用Aardvark并删除元素,但Aardvark有"背景"和相同大小元素的问题,而且无法针对那些.
更新:我一直在努力为这个问题写一个很好的更新,因为它让我更多地思考它.但由于英语不是我的主要语言,因此很难.
在过去几年中,浏览器的任务是与标准兼容.当他们接近这个目标时,我们应该考虑当浏览器兼容性最小时我们可以真正创建的内容,并且如果有技术我们可以利用这使得更快地呈现页面.
我们可以将过去几十年视为HTML/CSS的早期阶段,其主要目标只是让事情发挥作用.现在我们应该寻找加速当前流程的技术.这方面的一个例子是在上面的视频中,Gecko引擎两次运行代码.这是为什么?还有其他情况下它做了不必要的事情(即使它们工作和兼容)
这显然需要进行测试以确认,因此我的原始问题是真正的调试器.
我的0.02美元:
从某种意义上说,"真正的"HTML调试在技术上是不可能的,因为不需要HTML用户代理(Web浏览器)以特定顺序呈现HTML元素,也没有像原子单元那样的东西执行就像一个"声明".
例如,在呈现表时,用户代理是否应该 在这种意义上,HTML可以被认为是一种声明性语言,因为它指定了应该做什么(页面呈现为规范)但不确切地说如何做(确切地说将元素呈现到屏幕的顺序).一般来说,最好假设一切都在同一时间发生,尽管W3C确实提供了一些关于 IMO,webdev工具栏和Firebug是我们最好的,我们可以编辑/禁用特定的HTML元素和CSS规则. 在呈现其子项 s(广度优先)之前为每个表预留空间?或者它应该渲染每个孩子 和每个 s孩子等等(深度优先)?在实践中,用户代理进行各种猜测以尽可能快地呈现页面.换句话说,不能保证调试顺序与实际的渲染顺序相匹配,也不应该保证.
根据用户代理如何呈现
元素来加速渲染的技巧.
很好的答案.我认为,你的意思是HTML是声明性的,而不是命令性的.
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有