在我们即将面临工作的时候,入职面试一直是我认为的一条大坎,下面我总结了几条面试常用题目,并做出一些解读,希望能帮到你,有缘人!
1、css选择器有哪些,哪些样式可以继承?
css选择器
(1) 标签选择器 如:body,div,p,ul,li,通过标签来获取dom节点
(2)类选择器 如:class='body',class='head' 通过给dom节点添加一个类名,再通过类名获取dom节点 通过 前缀.+类名获取
(3)ID选择器 如:id="name",id="name_txt" 通过前缀#+类名获取
(4)全局选择器 如:号 直接写{} 给全局添加样式
(5)组合选择器 如:.head .head_logo,注意两选择器用空格键分开
(6)继承选择器(如:div p,注意两选择器用空格键分开)。
(7)伪类选择器(如:就是链接样式,a元素的伪类,4种不同的状态:link、visited、active、hover。)
(8)字符串匹配的属性选择符(^ $ *三种,分别对应开始、结尾、包含)
可以继承的样式
内联元素可以继承的属性:
1、字体系列样式
2、除text-indent、text-align之外的文本系列属性
块级元素可以继承的属性:
text-indent、text-align
2、css选择器优先级顺序
优先级就是分配给指定的 CSS 声明的一个权重,它由 匹配的选择器中的 每一种选择器类型的 数值 决定。
而当优先级与多个 CSS 声明中任意一个声明的优先级相等的时候,CSS 中最后的那个声明将会被应用到元素上。
!important 例外规则
当在一个样式声明中使用一个 !important 规则时,此声明将覆盖任何其他声明。虽然,从技术上讲,!important 与优先级无关,但它与最终的结果直接相关。使用 !important 是一个坏习惯,应该尽量避免,因为这破坏了样式表中的固有的级联规则 使得调试找 bug 变得更加困难了。
3、html中行内元素和块级元素有什么区别?
块级元素
总是从新的一行开始,即各个块级元素独占一行,默认垂直向下排列; 高度、宽度、margin及padding都是可控的,设置有效,有边距效果; 宽度没有设置时,默认为100%; 块级元素中可以包含块级元素和行内元素。
行内元素
和其他元素都在一行,即行内元素和其他行内元素都会在一条水平线上排列; 高度、宽度是不可控的,设置无效,由内容决定。 根据标签语义化的理念,行内元素最好只包含行内元素,不包含块级元素
4、js的数据类型有哪些
数据类型
1、基本类型:
字符串(String)、数字(Nu mber)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。
2、引用数据类型
对象(Object)、数组(Array)、函数(Function)。