前端面试秘籍HTML+CSS篇(一)
1 、你做的页面在哪些浏览器测试过?这些浏览器的内核分别是什么?
IE | trident 内核 |
Firefox | gecko 内核 |
Safari | webkit 内核 |
Opera | 以前是 presto 内核,Opera 现已改用 Google Chrome 的 Blink 内核 |
Chrome | Blink(也是基于webKit开发的) |
2、简述src与href的区别。
src 用于替换当前元素,href 用于在当前文档和引用资源之间确立联系。
src 是 source 的缩写,指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置;在请求 src 资源时会将其指向的资源下载并应用到文档内,例如 js 脚本,img 图片和 frame 等元素。
<script src ="js/JavaScript.js"></script>
当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内。这也是为什么将js 脚本放在底部而不是头部。
所以我们应该将引用的js放在文档结构的底部。另外我们在引用js的时候,最好
是将资源包含在自己的项目目录里面。千万不要直接引用第三方资源,尤其是将第三方
资源引入在头部。如果资源加载不出来会导致这个页面无响应。
href 是 Hypertext Reference 的缩写,指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,如果我们在文档中添加
<link href="css/xke.css" rel="stylesheet"/>
那么浏览器会识别该文档为 css 文件,就会并行下载资源并且不会停止对当前文档的处理。这也是为什么建议使用 link 方式来加载 css,而不是使用@import 方式。
@import url("css/xke.css"); //引入css,非并行获取的。
不建议使用
3、知道的网页制作会用到的图片格式有哪些吗?
PNG (包括PNG-8、PNG-24)
JPG JPGE
BMP
GIF //动态图,其实就是有无数张静态PNG或者JPG合成的,他的每一帧为一张图片
SVG EMF WMF //这些都是矢量图,无限放大而不会失真
PNG:优点(可保存透明背景的图片),缺点(画质中等) |
JPG:优点(文件小,利于网络传输),缺点(画质损失) |
BMP:优点(无损bai压缩,图质最好),缺du点(文件太大,不利于网络zhi传输) |
GIF:优点(动画存储格式),缺bai点(最多256色,画质差) |
SVG 矢量图放大不失真 |
注意:WMF EMF这个图片格式浏览器是没有办法直接打开预览的。
4、CSS选择器有哪些?
派生选择器,用HTML标签声明。
id 选择器(用 DOM 的 ID 申明)
类选择器(用一个样式类名申明)
属性选择器(用 DOM 的属性申明,属于 CSS2,IE6 不支持,不常用。这个不必知道)
后代选择器(利用空格间隔,比如 div .a{ })
群组选择器(利用逗号间隔,比如 p,div,#a{ })
一般而言,选择器越特殊,它的优先级越高。也就是选择器指向的越准确,它的优先级就越高。(请参知识点9)
5、CSS 中可以通过哪些属性定义 , 使得一个DOM 元素不显示在浏览器可视范围内?
最基本的:
设置 display 属性为 none,或者设置 visibility 属性为 hidde
企业中经常会被问及到的一个问题。
请说明display: none与visbility;hidden的区别是什么?
答: (1)display:none是彻底消失,不在文档流中占位;浏览器也不会解析该元素
visibility:hidden是视觉上消失了,可以理解为透明度为0的效果,在文档流中占
位,浏览器会解析该元素;
(2)使用visibility:hidden比display:none性能上要好,display:none切
换显示时visibility,页面产生回流(当页面中的一部分元素需要改变规模尺寸、
布局、显示隐藏等,页面重新构建,此时就是回流。所有页面第一次加载时需要产生
一次回流),而visibility切换是否显示时则不会引起回流。
6、超链接访问过后hover样式就不出现的问题是什么如何解决?
答案:被点击访问过的超链接样式不在具有 hover 和 active 了,解决方法是改变CSS属性的
排列顺序: L-V-H-A(link,visited,hover,active)
7、说说display属性有哪些可以做什么?
display:block 行内元素转换为块级元素
display:inline 块级元素转换为行内元素
display:inline-block 转为内联元素
8、哪些css 属性可以继承
可继承:font-size font-family color, ul li dl dd dt;
不可继承:border padding margin width height ;
9、css 优先级算法如何计算?
!important > id > class > 标签
!important 比 内联优先级高
* 优先级就近原则,样式定义最近者为准;
* 以最后载入的样式为准;
10、text-align:center 和 line-height 有什么区别?
text-align 是水平对齐,line-height 是行间。
11、前端页面由哪三层构成,分别是什么?作用是什么?
结构层 Html 表示层 CSS 行为层 js
12、行内元素有哪些? 块级元素有哪些?CSS的盒模型有哪些?
块级元素:div p h1 h2 h3 h4 form ul
行内元素: a b br i span input select
Css盒模型:内容,border ,margin,padding
13、px和em 的区别
px 和 em 都是长度单位,区别是,px的值是固定的,指定是多少就是多少,
计算比较容易。
em 的值不是固定的,并且 em 会继承父级元素的字体大小。
浏览器的默认字体高都是16px。所以未经调整的浏览器都符合: 1em=16px。那么12px=0.75em,10px=0.625em