前端面试题第四天
一、HTML部分
1.1 HTML5的文件离线储存怎么使用,工作原理是什么
已废弃
该特性已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,但也许会在未来的某个时间停止支持,请尽量不要使用该特性。
它正在处于从Web平台中被删除的过程。请改用Service Workers 代替。事实上,在Firefox 44中,当AppCache用于为页面提供离线支持时,控制台中现在显示一条警告消息,建议开发人员改用 Service workers 代替
参考文档:MDN
二、CSS部分
2.1 CSS选择器有哪些?哪些属性可以继承?
2.1.1 CSS选择器
id选择器、类选择器、后代选择器、子集选择器、标签选择器、并集选择器、伪元素选择器、属性选择器
2.1.2 选择器权重和优先级
!important ∞无穷大
内联样式 1000
id选择器优先级 100
类选择器优先级 10
标签选择器优先级 1
通配符优先级 0
即:!important > 内联样式 > id选择器 > 类选择器 > 标签选择器 > 通配符
2.2.1 CSS可以继承的属性
字体系列:
- font:组合字体
- font-family:规定元素的字体系列
- font-weight:设置字体的粗细
- font-size:设置字体的尺寸
- font-style:定义字体的风格
文本系列:
- text-indent:文本缩进
- text-align:文本水平对齐
- line-height:行高
- word-spacing:增加或减少单词间的空白(即字间隔)
- letter-spacing:增加或减少字符间的空白(字符间距)
- text-transform:控制文本大小写
- direction:规定文本的书写方向
- color:文本颜色
元素可见性:
visibility
表格布局属性:
caption-side、border-collapse、border-spacing、empty-cells、table-layout
列表属性:
list-style-type、list-style-image、list-style-position、list-style
所有元素可以继承的属性:
visibility、opacity2
内联元素可以继承的属性:
除text-indent、text-align之外的文本系列属性
块级元素可以继承的属性:
text-indent、text-align
三、JS 部分
3.1 写一个方法把下划线命名转成大驼峰命名
<script>
function formatHump(str) {
return str
// 把字符串分割成字符串数组
.split('_')
// map返回一个新的数组 第一个元素转换为大写 删除元素下标大写
.map((item) => item[0] && item[0].toUpperCase() + item.substr(1))
// 把数组中的所有元素放入一个字符串
.join('');
}
console.log(formatHump('web_chicken'));
</script>