前端面试题十五@杨志刚

link和import的区别

      区别1:link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴,只能加载CSS。

  区别2:link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。

  区别3:link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。

  区别4:ink支持使用Javascript控制DOM去改变样式;而@import不支持。

从属关系

1.1 link:link是HTML提供的标签,不仅可以加载CSS,还可以定义rel等属性

1.2 @import:@import是css提供的语法,只有导入样式表的作用

加载顺序

2.1  link:link在页面加载时CSS同时被加载

2.2 @import:引入的CSS要等页面加载完毕后再加载

兼容性问题

3.1 link是HTML提供的语法,不存在兼容性问题

3.2 @import是css2.1提供的语法,ie5以上才兼容

DOM可控性

js控制DOM时,可以通过插入link标签来改变样式,不能通过@import改变

权重问题(有争议)

link标签引入的样式权重大于@import标签

HTML5为什么只需要写 < !

HTML5不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行)。

而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型

doctype作用,标准模式和兼容模式有什么区别

<!DOCTYPE>声明位于位于HTML文档中的第一行,处于 <html> 标签之前。告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。

标准模式的排版 和JS运作模式都是以该浏览器支持的最高标准运行。

在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器行为以防止站点无法工作。

请写出HTML5新增的API

(1)绘画 canvas;

(2)用于媒介回放的 video 和 audio 元素;

(3)本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失;

(4)sessionStorage 的数据在浏览器关闭后自动删除;

(5)语意化更好的内容元素,比如 article、footer、header、nav、section;

(6)表单控件,calendar、date、time、email、url、search;

(7)新的技术webworker, websocket, Geolocation

css优先级如何计算

1.CSS优先级比较

!important  >   内联样式   >   id   >   class   >   标签   >   通配符   >   继承   >   默认

2.CSS权重计算

我们把特殊性分为4个等级,每个等级代表一类选择器,每个等级的值为其所代表的选择器的个数乘以这一等级的权值,最后把所有等级的值相加得出选择器的特殊值。

4个等级的定义如下:

第一等:代表内联样式,如: style=””,权值为1000。

第二等:代表ID选择器,如:#content,权值为0100。

第三等:代表类,伪类和属性选择器,如.content,权值为0010。

第四等:代表标签选择器和伪元素选择器,如div p,权值为0001。

第五等:通用选择器(*),子选择器(>),相邻同胞选择器(+),权值为0000

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,228评论 0 8
  • 一、理论基础知识部分 1.1、讲讲输入完网址按下回车,到看到网页这个过程中发生了什么 a. 域名解析 b. 发起T...
    我家媳妇蠢蠢哒阅读 3,188评论 2 106
  • 请参看我github中的wiki,不定期更新。https://github.com/ivonzhang/Front...
    zhangivon阅读 7,212评论 2 19
  • 前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:...
    秀才JaneBook阅读 2,590评论 0 25
  • 什么是事件委托?为什么要用事件委托? 事件委托就是利用事件冒泡机制指定一个事件处理程序,来管理某一类型的所有事件。...
    抱以恶意阅读 391评论 1 0