web前端常见面试题(一)

HTML、XML、XHTML 有什么区别?

HTML:HyperText Markup Language, 超文本标记语言
是用来的描述和定义网页内容的, 有自己的预定义标签
XML: Extensible Markup Language, 可扩展的标记语言
用于存储数据和结构参考, 没有自己的预定义标签
XHTML: Extensible Hypertext Markup Language, 可扩展超文本标记语言
基于xml, 作用于html类似, 相比于html有更严格的语法要求
比如: 元素必须小写; 标签必须闭合等

怎样理解HTML语义化?

选择合适的标签, 使用合理的代码结构, 便于开发者阅读, 同时让浏览器的爬虫和机器能够很好的阅读.

怎样理解内容与样式分离的原则?

  • 写html的时候,尽量先不去关心样式, 重点放在结构和语义上
  • 写js的时候, 尽量不要用js去操作样式, 而是通过给元素添加删除class来控制样式变化
  • html内不允许出现属性样式, 尽量不要出现行内样式

有哪些常见的meta标签?

<meta charset="utf-8">
告诉浏览器用utf-8的编码去加载渲染页面
meta标签共有两个属性:http-equiv和name;不同的属性又有不同的参数值,这些不同的参数值就实现了不同的网页功能。

  1. name属性
    name属性主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的.

<meta name="keywords" content="前端 饥人谷">
<meta name="description" content="最有爱的前端学习社区">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> //主要是设计到移动端网页的

  1. http-equiv属性
    相当于http协议中文件头的作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变量值。
    meat标签的http-equiv属性语法格式是:<meta http-equiv=”参数” content=”参数变量值”>

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
//指定IE和Chrome使用最新版本渲染当前页面
可以参考http://zq210wl.github.io/2015/01/05/html-meta-tag/, meta中常见的属性及意义

文档声明的作用?严格模式和混杂模式指什么?<!doctype html> 的作用?

  1. <!DOCTYPE>声明叫做文件类型定义(DTD),声明的作用为了告诉浏览器该文件的类型。让浏览器解析器知道应该用哪个规范来解析文档。<!DOCTYPE>声明必须在 HTML 文档的第一行,这并不是一个 HTML 标签。DTD(文档类型定义)是一组机器可读的规则,他们定义 XML 或 HTML 的特定版本中允许有什么,不允许有什么。在解析网页时,浏览器将使用这些规则检查页面的有效性并且采取相应的措施。浏览器通过分析页面的 DOCTYPE 声明来了解要使用哪个 DTD ,由此知道要使用 HTML 的哪个版本
  2. 严格模式和混杂模式的区别
    首先,严格模式(又称标准模式,Standards模式)和混杂模式(Quirk模式)都是指浏览器的呈现模式,要与Doctype的两种风格区别开来(严格( strict )和过渡( transitional ),过渡 DOCTYPE 的目的是帮助开发人员从老版本迁移到新版本)。
    严格模式:又称标准模式,是指浏览器按照 W3C 标准解析代码,呈现页面
    混杂模式:又称怪异模式或兼容模式,是指浏览器用自己的方式解析代码,即使用一种比较宽松的向后兼容的方式来显示页面
    而浏览器究竟是使用严格模式还是混杂模式呈现页面与网页中的 DTD (文件类型定义)直接相关。
    对于 HTML 4.01 文档,
    包含严格 DTD 的 DOCTYPE 常常导致页面以标准模式呈现。
    包含过度 DTD 和 URI 的 DOCTYPE 也导致页面以标准模式呈现。
    但是有过度 DTD 而没有 URI 会导致页面以混杂模式呈现。
    DOCTYPE 不存在或形式不正确会导致 HTML 和 XHTML 文档以混杂模式呈现。
    对于HTML5文档,
    HTML5 没有 DTD ,因此也就没有严格模式与混杂模式的区别,HTML5 有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。( HTML5 没有严格和混杂之分)
  3. <!doctype html>是h5的文档声明

浏览器乱码的原因是什么?如何解决?

简单来说就是保存html的编码格式和浏览器解析html时的编码不一致.
可以在<meta charset="">和保存html的编码格式一致即可.
可以参考若愚的聊一聊编码和乱码

常见的浏览器有哪些,什么内核?

  1. 什么是浏览器内核?
    浏览器内核包含两部分: 渲染引擎和JS 引擎.
  • 渲染引擎负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等),以及计算网页的显示方式,然后会输出至显示器或打印机等.
    浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同.
  • JS 引擎则是解析 Javascript 语言,执行 javascript 语言来实现网页的动态效果.
  • 最开始渲染引擎和 JS 引擎并没有区分的很明确,后来 JS 引擎越来越独立,内核就倾向于只指渲染引擎
  1. 常见的浏览器内核
  • Trident: IE内核, 是微软在 Mosaic(”马赛克”,这是人类历史上第一个浏览器,从此网页可以在图形界面的窗口浏览) 代码的基础之上修改而来的,并沿用到 IE11,也被普遍称作 “IE内核”.
    国内很多的双核浏览器的其中一核便是 Trident,美其名曰 “兼容模式”.

  • Gecko: Firefox内核,Netscape6 开始采用的内核,后来的 Mozilla FireFox(火狐浏览器) 也采用了该内核,Gecko 的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能, 同时它也是一个跨平台的内核.

  • Webkit: Safari内核, Safari 是苹果公司开发的浏览器,使用了KDE(Linux桌面系统)的 KHTML 作为浏览器的内核,Safari 所用浏览器内核的名称是大名鼎鼎的 WebKit。 Safari 在 2003 年 1 月 7 日首度发行测试版,并成为 Mac OS X v10.3 与之后版本的默认浏览器.
    2008 年谷歌公司发布 chrome 浏览器,采用的 chromium 内核便 fork 了 Webkit.

  • Chromium/Blink: Chrome内核, 2008 年,谷歌公司发布了 chrome 浏览器,浏览器使用的内核被命名为 chromium.
    chromium 问世后,带动了国产浏览器行业的发展。一些基于 chromium 的单核,双核浏览器如雨后春笋般拔地而起,例如 搜狗、360、QQ浏览器等等,无一不是套着不同的外壳用着相同的内核.
    2013 年 4 月 3 日,谷歌在 Chromium Blog 上发表 博客,称将与苹果的开源浏览器核心 Webkit 分道扬镳,在 Chromium 项目中研发 Blink 渲染引擎(即浏览器核心),内置于 Chrome 浏览器之中.
    Blink 引擎问世后,国产各种 chrome 系的浏览器也纷纷投入 Blink 的怀抱.

  • Presto: 挪威产浏览器 opera 的 “前任” 内核, 最新的 opera 浏览器早已将之抛弃从而投入到了谷歌大本营

参考自:主流浏览器内核介绍(前端开发值得了解的浏览器内核历史)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容