【日更】前端面试题

119 阅读3分钟

一、说一下哪些是块级元素?哪些是行块级元素?哪些是行级元素?

1、块级元素:
    ①、h1 - h6:标题标签
    ②、p:段落标签
    ③、hr:水平线标签
    ④、ul + li:无序列表
    ⑤、ol + li:有序列表
    ⑥、dl + dt / dd:自定义 列表
    ⑦、div:布局容器
    ⑧、table:表格
    ⑨、from:表单
2、行块级元素:
    ①、input:表单元素
    ②、img:图片标签
3、行级元素:
    ①、a:超链接
    ②、span:修饰文本标签
    ③、strong or b:字体加粗
    ④、em or i:字体倾斜
    ⑤、ins or u:下划线
    ⑥、del or s:删除线
    ⑦、label:表单元素
    ⑧、sub:下标
    ⑨、sup:上标

二、src 与 href 的区别?

1、href 表示文件的来源地址,在 link 和 a 标签上使用。href 引用的内容是与页面有关联的引用。
2src 表示文件的录入地址,在 img 和 script 标签上使用。

三、常用的选择器有哪些?id 和 class 的区别?并说明 css 的优先级。

1、常用的选择器:标签选择器、类名选择器、id选择器、通配符选择器、序选择器、交集选择器、并集选择器、子代选择器、后代选择器、下一个兄弟选择器
2id 是唯一的,一个页面只能有一个idclass 不是唯一的,多个标签可以用相同的类名,一个标签可以用多个类名
3、行内式 > 内嵌式 > 链入式;不同类型的选择器:!important > id选择器 > 类名选择器 > 标签选择器

四、css 哪些属性是可以被继承的?

1、字体颜色可以被继承
2、以 font 开头的可以被继承
3、以 text 开头的可以被继承
4、以 line 开头的可以被继承

五、什么是盒模型?盒模型的组成。

盒模型从外到内以此是,margin 外边距,border 边框,padding 内边距,内容的宽高

六、清除浮动的方法有哪些?

1、直接给父级添加高度
2、隔墙法,但是不推荐使用,产生多余代码
3、超出隐藏,overflow:hidden
4、公共类,伪类清楚。
    类名:after{
            伪类元素内容为空
            content:"";
            转为块元素
            display:block;
            清除左右浮动
            clear:both;
    }

七、div 中不设高度,在里面添加一张图片,box 高度会自动撑开,但是 div 会有 2-4px 像素的误差,怎么解决?(行块元素有 2-4 像素的误差,什么原因造成的?怎么解决?)

1、行块元素垂直对齐基准导致父级产生2-4像素误差,行块元素不是绝对垂直居中;
2、解决办法:
    方法1:改变行块元素的垂直居中方式
    方法2:改变他的display转为块元素

八、两个宽度为 50%并且边框为 1px 的 div 并排显示(怪异盒子)。

将外边框改为内边框,box-sizing:border-box;

九、说出四种实现水平垂直居中的方式?

1、设置绝对定位四个属性为零,matgin:auto
2、left:50%;margin-left:负数宽度的一半
	top:50%;margin-top:负数高度的一般
3、设置绝对定位,
	left:50%;top:50%;
	transform:translate(-50%,-50%);
4、设置display: flex;
	/*水平居中*/
	justify-content: center;
	/*垂直居中*/
	align-items: center;

十、说一下定位有几种?有什么区别?

1、相对定位,绝对定位、固定定位。
2、区别:
    ①、相对定位:以自己为参考点,不脱离标准文档流,原来的位置被保留
    ②、绝对定位:以距离自己最近的有相对定位的祖辈为参考点,脱离标准文档流,原来的位置不被保留
    ③、固定定位:以浏览器为参考点,脱离标准文档流,原来的位置不被保留