09-阐述内容、样式和行为分离

这是面试时候可能遇到的一道题


一、先说观点

  • 我认为内容、样式和行为分离,根据W3C标准来说,就是html负责内容,CSS负责样式,JS负责行为。

二、提供论据

  • 类似这样的题目,如果正面不好回答的情况下,可以尝试反着回答,如人为什么要吃饭,答:如果人不吃饭就会饿死!

  1. 假设html控制样式,如图
    html控制样式
  • <center>标签把文字居中,然后用<strong>加粗文字。
  • 这样的写法把原本简单的逻辑结构变得复杂话,不利于代码的维护。
  • 如果html也负责样式的话,使得内容的结构有很多无用的标签,有的标签表示内容,有的标签表示样式,这样我就很难区分内容的逻辑结构
  1. 假设用CSS写内容
    CSS写内容
  • 这样写会导致用户选取不到文字
  • 而且JS取不到这里的文本内容
  • 假如用CSS控制行为,那么CSS里面有很复杂的逻辑,会导致CSS很慢,最终影响页面加载速度
  1. 假设用JS控制样式
  • 还没写$div.hiden()之前
  • 写了$div.hiden()之后,文字就被隐藏
  • 加上$div.show()文字又出现

    那么问题来了
  • $div.show()之后,div的属性为display: block;,那么有可能在$div.hiden()之前,原本的div标签属性是display: flex;,经过$div.show()改变了属性的值为block,那么页面的flex布局就会全局炸掉

三、总结


  • 为了以后改版时更方便,直接修改样式,而不动HTML的内容。更方便易于阅读样式和内容,便于项目的维护。
  • 网页的内容直接暴露在搜索引擎面前,这样有利于搜索引擎抓取网页的内容。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 分手一年半了 就在昨天他发微信跟我说很想我 是啊 我也很想你 今早9点他在我家门口 我开门 猛然呆住 我就看着他 ...
    深情只如一贯流云雨阅读 214评论 0 0
  • 也许我这辈子都一事无成,就像人们说的那样,混吃等死,唯一让我庆幸的是我一直是我,不说不忘初心,但也问心无愧。 我没...
    见过我的肥皂嘛阅读 199评论 0 0
  • 暖暖春风轻拂面,娟娟水色镜中传。 杨柳依依小河边,此情此景最相宜。 (非常非常感谢@ 丁_香的妙笔。我先斩后了。)
    小胡巴阅读 359评论 14 24
  • 现如今,我身边的妈妈们谈起孩子的学习教育、社会上各种类型的培训机构、各种杯赛如数家珍,甚至有的妈妈说,说起育儿经验...
    涵妈说育儿阅读 641评论 4 8
  • 每天晚上,我都会坐在书桌前和南北通会话。 我们互相诉说各自的日常,从搭配的衣服到傍晚的饭局,再从最新的美剧聊到金牛...
    freedom1430阅读 259评论 0 0