初学css总结,css快速入门

首页 > 经验 > 作者:YD1662022-10-31 22:59:32


31. 什么是外边距重叠? 重叠的结果是什么?

首先,外边距重叠就是 margin-collapse。相邻的两个盒子(可能是兄弟关系也可能是祖先关系)的外边距可以结合成一个单独的外边距。 这种合并外边距的方式被称为折叠,结合而成的外边距称为折叠外边距。

折叠结果遵循下列计算原则:

32.display: none; 与 visibility: hidden; 有什么区别?

* 这两个属性的值都可以让元素变得不可见;

区别:

33.css hack原理及常用hack有哪些?

原理: 利用不同浏览器对CSS的支持和解析结果不一样编写针对特定浏览器的样式。

常见的hack有: 属性hack选择器hackIE条件注释

34.link 与 @import 的区别?

总的来说: link优于@import。

35.什么是 FOUC(Flash of Unstyled Content)? 如何来避免 FOUC?

当使用@import导入CSS时,会导致某些页面在IE出现奇怪的现象: 没有样式的页面内容显示瞬间闪烁,这种现象被称为“文档样式暂时失效”,简称FOUC。

产生原因: 当样式表晚于结构性html加载时,加载到此样式表时,页面将会停止之前的渲染。等待此样式表被下载和解析后,再重新渲染页面,期间导致短暂的花屏现象。

解决办法: 只要在<head>之间加入一个<link>或者<script>``</script>元素即可。

36.display,float,position有什么关系?37.外边距折叠(collapsing margins)

毗邻的两个或多个margin会合并成一个margin,叫做外边距折叠。规则如下:

38.有哪几种隐藏元素的方法?39.li与li之间有看不见的空白间隔是什么原因引起的?有什么解决办法?

li排列受到中间空白(回车/空格)等的影响,因为空白也属于字符,会被应用样式占据空间,产生间隔。解决办法:

40.浏览器是怎样解析CSS选择器的?

浏览器解析CSS是从上到下,从左到右解析的,这样会提高查找选择器所对应的元素的效率(至于原因,有兴趣的童鞋可以自行去了解)。

初学css总结,css快速入门(9)


41.全屏滚动的原理是什么?用到了CSS的哪些属性?

全屏滚动有点类似于轮播,整体的元素一直排列下去,假设有5个需要展示的全屏页面,那么高度是500%,只是展示100%。也可以理解为超出隐藏部分,滚动时显示。

可能用到的CSS是: overflow:hidden; transform:translate(100%, 100%); display:none;

42.对浏览器内核的理解?

浏览器内核主要分为两个部分: 渲染引擎和js引擎;

最开始渲染引擎和js引擎没有明确的区分,后来js引擎越来越独立,内核就倾向于只渲染引擎。

43.对WEB标准以及W3C的理解与认识

对于结构的要求:(规范的标签可以提高搜索引擎对页面的抓取效率,对SEO很有帮助)

对于CSS和JS来说:

44.制作一个访问量很大的网站,如何管理所有的css文件,js和图片?

从人手,分工和同步方面回答:

45.视差滚动效果以及如何实现?

视差滚动(Parallax Scrolling)指网页滚动过程中,多层次的元素进行不同程度的移动,视觉上形成立体运动效果的网页展示技术(3D效果)。

实现方式:

46.对BFC规范(块级格式化上下文:block formatting context)的理解

BFC规定了内部的Block Box如何布局。一个页面是由很多个Box组成的,元素的类型和display属性,决定了这个Box的类型。不同类型的box,会参与不同的Formatting Context(决定如何渲染文档的容器),因此Box内的元素会以不同的方式渲染,也是就是说BFC内部的元素和外部的元素不会相互影响。

定位方案:

满足下列条件之一就可以出发BFC:

47.元素竖向的百分比设定是相对于容器的高度吗?

一般来说,子元素的百分比单位都是以父元素为依据。但是margin和padding例外。元素的height是相对于容器的高度,但是元素的margin和padding是相对于容器的宽度。

48.一个满屏'品字'布局如何设计?

方法有很多种,但是比较简单的方式就是: 上面的div宽度设置为100%,底下两个div设置成50%,并使用float或者inline使其保持在同一行即可(具体的样式可以自己微调)。如下:

css: .content { width: 50%; height: 150px; margin: 0 auto; } .top { width: 40%; height: 50px; background-color: pink; margin-bottom: 50px; margin-left: 30%; } .left { width: 45%; height: 50px; background-color: pink; float: left; } .right { width: 45%; height: 50px; background-color: pink; float: right; } html: <div class="content"> <div class="top"></div> <div class="left"></div> <div class="right"></div> </div>> 复制代码

初学css总结,css快速入门(10)

49.经常遇到的浏览器的兼容性有哪些?原因,解决方法是什么,常用hack的技巧 ?

(1)、问题:png24位的图片在ie浏览器上出现背景。解决: 做成png8;

(2)、问题:浏览器默认的margin和padding不同。 解决: 添加一个全局的*{ margin: 0; padding: 0;};

(3)、问题:IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性,而Firefox下,只能使用getAttribute()获取自定义属性。 解决: 统一通过getAttribute()获取自定义属性;

(4)、问题: IE下,event对象有x,y属性,但是没有pageX,pageY属性,而Firefox下,event对象有pageX,pageY属性,但是没有x,y属性。 解决: 使用mX(mX = event.x ? event.x : event.pageX;)来代替IE下的event.x或者Firefox下的event.pageX。

50.box-sizing 常用的属性有哪些?分别有什么作用?

初学css总结,css快速入门(11)


本篇未完结,请见下一篇

推荐CSS学习相关文章


作者:hh_phoebe
转发链接:https://juejin.im/post/5ee0cf335188254ec9505381

上一页123末页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.