我最近遇到了一个CSS伪类,它可以突出显示一个表单字段,而不是使用一些自定义的javascript来做同样的事情。另一个例子是使用CSS而不是javascript突出显示表行。
所以我的问题是:对于像这样的事情,使用CSS比使用javascript快多少?显然我们在谈论一般,但可能有一个很好的经验法则。
我认为这是一个新的途径让我在页面上获得较小的性能提升,而不是我过去使用的其他方法。
答案 0 :(得分:6)
任何可以在CSS中合理完成的风格效果都应该完全用CSS而不是javascript来完成。它几乎肯定会表现得更好。然而,真正的好处是使用CSS来设计风格是有道理的。这就是CSS的用途。
使用javascript来设置可以使用CSS设置样式的内容并不会让我觉得比使用表格进行布局更好,或者不赞成使用<font>
或<center>
这样的标签来获得你想要的外观......这是一个不受欢迎的黑客攻击。
至于性能,不幸的是这种事情很难测试。通常你会通过在一个循环中反复做一些事情来进行性能测试,例如5秒,然后尽可能快地做其他事情5秒,然后看看哪个东西能够执行大部分时间都在规定的时间内。由于无法自动悬停/取消悬停元素而不会增加一堆会导致测试结果偏差的开销,因此很难进行测试。
答案 1 :(得分:0)
我很欣赏其他答案,但css也有不好的一面: