Skip to content

面试题:行内元素有哪些?块级元素有哪些? 空(void)元素有那些?

行内元素:a、b、span、img、input、strong、select、label、em、button、textarea

块级元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote

空元素:即系没有内容的HTML元素,例如:br、meta、hr、link、input、img

面试题:页面导入样式时,使用link和@import有什么区别?

示例:

 <link href="xxx.css" rel="stylesheet" type="text/css" />

href 属性设置外部样式表文件的地址,可以是相对地址,也可以是绝对地址。

rel 属性定义关联的文档,这里表示关联的是样式表。

type 属性定义导入文件的类型,同 style 元素一样,text/css表明为 CSS 文本文件。

示例:

<style type="text/css">  @import url("xxx.css")</style>

@import是 CSS 提供的语法规则,只有导入样式表的作用;

在 @import 关键字后面,利用 url() 函数包含具体的外部样式表文件的地址。

1.从属关系区别

@import是 CSS 提供的语法规则,只有导入样式表的作用;link是HTML提供的标签,不仅可以加载 CSS 文件,还可以定义 RSS、rel 连接属性等。

2.加载顺序区别

加载页面时,link标签引入的 CSS 被同时加载;@import引入的 CSS 将在页面加载完毕后被加载。

3.兼容性区别

@import是 CSS2.1 才有的语法,故只可在 IE5+ 才能识别;link标签作为 HTML 元素,不存在兼容性问题。

4.DOM可控性区别

可以通过 JS 操作 DOM ,插入link标签来改变样式;由于 DOM 方法是基于文档的,无法使用@import的方式插入样式。

5.权重区别(该项有争议,下文将详解)

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

面试题:title与h1的区别、b与strong的区别、i与em的区别?

title与h1的区别

定义:

title是网站标题,

h1是文章主题

作用:

title概括网站信息,可以直接告诉搜索引擎和用户这 个网站是关于什么主题和内容的,是显示在网页Tab栏里的;

h1突出文章主题,面对用户,更突出其视觉效果,指向 页面主体信息,是显示在网页中的。

b与strong的区别

定义:

b(bold)是实体标签,用来给文字加粗,

strong是逻辑标签,作用是加强字符语气。

区别:

b标签只是加粗的样式,没有实际含义,常用来表达无强调或着重意味的粗体文字,比如文章摘要中的关键词、 评测文章中的产品名称、文章的导言;

strong表示标签内字符重要,用以强调,其默认格式是加粗,但是可以通 过CSS添加样式,使用别的样式强调。

建议:为了符合CSS3的规范,b应尽量少用而改用strong

i与em的区别

定义:

i(italic)是实体标签,用来使字符倾斜,

em(emphasis)是逻辑标签,作用是强调文本内容

区别:

i标签只是斜体的样式,没有实际含义,常用来表达无强调或着重意味的斜体,比如生物学名、术语、外来语;

em表示标签内字符重要,用以强调,其默认格式是斜体,但是可以通过CSS添加样式。

建议:为了符合CSS3的规 范,i应尽量少用而改用em

面试题:img标签的title和alt有什么区别?

title:当⿏标滑动到图片上的时候显示,相当于图片的注释

alt:当图片不能正常加载的时候,会代替图片显示alt定义的文字,相当于提示语

面试题:png、jpg、gif 这些图片格式解释一下,分别什么时候用?