CSS面试题汇总(三)

方法二:我们为了代码美观以及方便修改,很多时候我们不可能将 <li> 全部写在一排,那怎么办?既然是空格占一个字符的宽度,那我们索性就将 <ul> 内的字符尺寸直接设为 0,将下面样式放入样式表,问题解决。

.wrap ul {

font-size: 0px;

}

但随着而来的就是 <ul> 中的其他文字就不见了,因为其尺寸被设为 0px 了,我们只好将他们重新设定字符尺寸。

方法三:本来以为方法二能够完全解决问题,但经测试,将 li 父级标签字符设置为 0 在 Safari 浏览器依然出现间隔空白;既然设置字符大小为 0 不行,那咱就将间隔消除了,将下面代码替换方法二的代码,目前测试完美解决。同样随来而来的问题是 li 内的字符间隔也被设置了,我们需要将 li 内的字符间隔设为默认。

.wrap ul {

letter-spacing: -5px;

}

之后记得设置 li 内字符间隔

.wrap ul li {

letter-spacing: normal;

}

22. 设置元素浮动后,该元素的 display 值是多少?

参考答案:

自动变成 display:block

23. 怎么让 Chrome 支持小于 12px 的文字?

参考答案:

css3 的 transform 属性,设置值为 scale(x, y) 定义 2D 缩放转换

示例:

-webkit-transform: scale(0. 50);

24. display:inline-block 什么时候会显示间隙?

参考答案:

间隙产生的原因是因为,换行或空格会占据一定的位置

推荐解决方法:

父元素中设置

font-size:0; letter-spaceing:-4px;

25.png、jpg、gif 这些图片格式解释一下,分别什么时候用?,webp 呢

参考答案:

gif 图形交换格式,索引颜色格式,颜色少的情况下,产生的文件极小,支持背景透明,动画,图形渐进,无损压缩(适合线条,图标等),缺点只有 256 种颜色

jpg 支持上百万种颜色,有损压缩,压缩比可达 180:1,而且质量受损不明显,不支持图形渐进与背景透明,不支持动画

png 为替代 gif 产生的,位图文件,支持透明,半透明,不透明。不支持动画,无损图像格式。Png8 简单说是静态 gif,也只有 256 色,png24 不透明,但不止 256 色。

webp 谷歌开发的旨在加快图片加载速度的图片格式,图片压缩体积是 jpeg 的 2/3,有损压缩。高版本的 W3C 浏览器才支持,google39+,safari7+

26. style 标签写在 body 后与 body 前有什么区别?

参考答案:

从上向下加载,加载顺序不同

27. 超链接访问过后 hover 样式就不出现的问题是什么?如何解决?

参考答案:

被点击访问过的超链接样式不在具有 hover 和 active 了, 解决方法是改变 CSS 属性的排列顺序: L-V-H-A(link, visited, hover, active)

28. 什么是 Css Hack?ie6, 7, 8 的 hack 分别是什么?

参考答案:

针对不同的浏览器写不同的 CSS code 的过程,就是 CSS hack。

示例如下:

#test {

width: 300px;

height: 300px;

background-color: blue;/firefox/ background-color: red\9;/all ie/ background-color: yellow;/ie8/+background-color: pink;/ie7/ _background-color: orange;/ie6/

}

:root #test {

background-color: purple\9;

}

/ie9/

@media all and (min-width:0px) {

#test {

background-color: black;

}

}

/opera/

@media screen and (-webkit-min-device-pixel-ratio:0) {

#test {

background-color: gray;

}

}

/chrome and safari/

29. 重置(resetting)CSS 和 标准化(normalizing)CSS 的区别是什么?你会选择哪种方式,为什么?

参考答案:

  • 重置(Resetting): 重置意味着除去所有的浏览器默认样式。对于页面所有的元素,像 marginpaddingfont-size 这些样式全部置成一样。你将必须重新定义各种元素的样式。

  • 标准化(Normalizing): 标准化没有去掉所有的默认样式,而是保留了有用的一部分,同时还纠正了一些常见错误。

当需要实现非常个性化的网页设计时,我会选择重置的方式,因为我要写很多自定义的样式以满足设计需求,这时候就不再需要标准化的默认样式了。

解析:参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值