如何理解HTML、CSS和JS三者分离

回答思路:正向答这道题很难说出什么,就像有人问你为什么人类需要空气和水?转换角度,用如果不... ...的思维去回答,如果没有水我们会难以维持生命,没有空气我们不能呼吸会缺氧而死。以这样的思路来解这个问题:

  1、HTML可以负责样式,但如果这样会使得内容的结构有很多无用的标签,这让html的结构看上去十分复杂,有的标签是用来表示内容,有的又是用来表示样式,这样很难区分它们之间的逻辑结构。

  2、CSS可以显示内容,但这里的内容用户不能选中,并且JS中也无法取到它们。

  3、CSS可以负责行为(在IE时代),但如果CSS中有很复杂的逻辑,就会使得CSS运行很慢,因为它不仅负责了样式还要控制逻辑,CSS变慢进而会导致页面加载变慢。

  4、不要用JS去负责样式!!!(千万别写div.show或div.hide)正确做法是加一个class去切换状态,该是什么样子让CSS来搞定。eg:

你好
div{
  display:none;
}
var $div = $('#x')
$div.addClass('active')激活状态/('disable')未激活状态

  表示一个语义化的变量名或是状态,不去描述到底是看得见(show)或是看不见(hide),只去描述一个正面或负面的状态,至于这个状态下到底长什么样子,CSS来管。




你可能感兴趣的:(如何理解HTML、CSS和JS三者分离)