隐藏元素或动态创建?

Jon*_*ter 7 html javascript css

哪个选项最好:

  • 在标记中有一个元素,用CSS隐藏.如果启用了JS,则显示该元素.

  • 如果启用了JS,则标记中没有元素并动态创建它.

如果用户没有JS,我不希望显示div.我的问题不是如何编写不同的案例,这是最好的和为什么.

编辑:当我说"最好"时,我的意思是支持你的回答,为什么它对你最好.可以是速度/语义/等.我想要的是能够更好地了解每一个的利弊.速度也不是问题,因为它只是一个元素,所以它就像毫秒.

对于第一个选项,它可能更快,但我们有不必要的标记和CSS规则.因为如果没有JS,那么根本就没有内容,更不用说隐藏它了.

现在是第二个选项,即使它可能不那么快,我将不同的部分分开,只是真正加载必须加载的部分.

Dio*_*ane 6

DOM操作是最昂贵的.显示现有代码比注入代码更快.

  • 虽然这是真的,但由于页面通常具有多少空闲时间,因此JavaScript中的性能很少成为问题. (4认同)