面试遇到的知识点

一、sessionStorage、localStorage、cookie的区别

  • cookie是网站为了标识用户身份而存储在用户本地终端上的数据(通常经过加密),cookie数据始终在同源的HTTP请求中携带(即使不需要),会在浏览器和服务端之间来回传递。
  • sessionStorage和localStorage不会自动将数据发送给服务器。仅在本地保存。
  • 存储大小:cookie数据大小不能超过4k,sessionStorage和localStorage虽然也有大小限制,但比cookie大得多,可以达到5M或更大。
  • 有效时间:localStorage存储持久数据,浏览器关闭后数据不丢失,除非主动删除;sessionStorage数据在当前浏览器窗口关闭后自动删除;cookie设置的cookie过期时效前一直有效,即使窗口和浏览器关闭。

二、如下代码在浏览器中如何显示?

CSS: 
div {
  width:200px;
  height:200px;
  background-color:red;
}
HTML:
<div></div>
<div></div>
<div></div>

答:显示的是宽200px,高600px的矩形

将div换成span呢?

答:不显示,因为内联元素无法设置宽高

怎样让这三个div在同一行显示并消除空隙?

解决方法:

  1. 设置display:inline-block,并将父元素的font-size设置为0,自身的font-size设置成不为0的值。如果有字就看不见了。
    2.display:inline-block,float:left。

三、HTML中有哪些行内元素,哪些块级元素,哪些空元素,以及这三类元素的区别

  • 行内元素:a,b,span,img,input,select,strong
  • 块级元素:div,ul,ol,li,dl,dt,dd,h系列,p
  • 空元素:br,hr,img,input,link,meta
  • 行内元素不可设置宽高,不独占一行
  • 块级元素可以设置宽高,独占一行

四、CSS的display属性

属性值有:none|inline|inline-block|block|list-item|run-in|table|inline-table|table-row-group|table-header-group|table-footer-group|table-row
|table-column-group|table-column|table-cell|table-caption|inhert

  • none:元素不会显示,而且该元素的显示空间不会保留
  • inline:display的默认属性。将元素显示为内联元素,元素前后没有换行符。一旦元素的属性设置成inline,属性的宽高将会失效
  • block:将元素设置成块级元素,元素前后有换行符。设置成block后,元素可以设置宽高,元素独占一行
  • inline-block:行内块级元素,融合了inline和block的特性。即使是内联元素也可以设置宽高。
  • 其他不常用的属性:
    list-item:将元素作为列表显示
    run-in:根据上下文作为块级或内联元素显示
    table:元素作为块级表格来显示(类似<table>),表格前后带有换行符
    inline-table:元素作为内联表格来显示,前后无换行符
    table-row-group:元素作为一个或多个行的分组来显示,类似于(<tbody>)。
    table-header-group:元素作为一个或多个行的分组来显示(类似<thead>)。
    table-footer-group:元素作为一个或多个行的分组来显示(类似<tfoot>)
    table-row:作为一个表格行显示(类似<tr>)
    table-column-group:作为一个或多个列的分组来显示(类似<colgroup>)
    table-column:作为一个单元格来显示(类似<col>)
    table-cell:作为一个表格单元格来显示(类似<td><th>)
    table-caption:作为一个表格标题来显示(类似<caption>)
    inhert:从父元素继承display属性的值

五、position属性

属性值有:static|relative|absolute|fixed|sticky

  • static:默认值,即没有定位,不受top,bottom,left,right的影响
<div class="d1"></div>
<div class="d2"></div>
<div class="d3"></div>
<style>
    div {
        width: 200px;
        height: 200px;
        background-color: red;
    }
    .d2 {
        background-color: yellow;
        position: static;
        left:10px;
    }
</style>
static.png
  • relative:元素相对于自身的原位置便宜某个距离,但是原来的空间依旧保留,表现为空白(left和right同时设置的时候,遵循left的值)
.d2 {
        background-color: yellow;
        position: relative;
        left: -10px;
        right: -10px;
    }
relative.png
  • absolute:原来的元素空间被删除,新生成一个块级框,与页面内容相对静止,如果页面向下滑动,该块级框会跟随向上运动
<style>
    div {
        width: 200px;
        height: 200px;
        background-color: red;
    }
    .d2 {
        background-color: yellow;
        position: absolute;
        top: 20px;
        left: 20px;
    }
</style>
absolute.png

第二个div的position:absolute时,第二个div元素相对于浏览器窗口偏移,原位置被删除,所以第三个div在原来第二个div的位置。

  • fixed:原来的元素空间被删除,新生成的一个块级框固定在页面的一个位置,即使页面下滑,该块级框依旧不改变位置。
<style>
    div {
        width: 200px;
        height: 600px;
        background-color: red;
    }
    .d2 {
        height: 200px;
        background-color: yellow;
        position: fixed;
        top: 20px;
        left: 20px;
    }
</style>
fixed.png
  • sticky:跟随页面一起滚动,当超过阈值以后,固定在页面边缘,相当于fixed和absolute的混合
<style>
    .d1 {
        width: 200px;
        height: 200px;
        background-color: red;
    }
    .d2 {
        width: 200px;
        height: 200px;
        background-color: yellow;
        position: sticky;
        top: 20px;
    }
    .d3 {
        width: 200px;
        height: 800px;
        background-color: red;
    }
</style>

滚动之前:
sticky.png

超过阈值以后:
sticky.png
  • inherit:继承父元素的position属性

z-index:设置元素之间的叠放顺序,只能在position属性值为relative或absolute或fixed的元素上有效。
基本原理:z-index的值可以控制定位元素在垂直于显示屏幕方向(z轴)上的堆叠顺序,值大的元素发生重叠时会在值小的元素上面。

六、CSS盒子模型

就是用来装页面上的元素的矩形区域。CSS的盒子模型包括IE盒子模型和标准盒子模型
区别:这两种盒子模型的width(height)的包含范围不同,IE盒子模型的width指content宽度+左右padding+左右border;标准盒子模型的width指content的宽度。
CSS3中引入了box-sizing属性,box-sizing: border-box,表示IE盒子模型,box-sizing:content-box,表示标准盒子模型,box-sizing:padding-box,表示这个属性值的宽度包含了左右padding+content宽度。

七、flex布局

语法篇:
http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
实例篇:
http://www.ruanyifeng.com/blog/2015/07/flex-examples.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,002评论 6 509
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,777评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,341评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,085评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,110评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,868评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,528评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,422评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,938评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,067评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,199评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,877评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,540评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,079评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,192评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,514评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,190评论 2 357

推荐阅读更多精彩内容

  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,220评论 0 8
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,587评论 0 7
  • 一:在制作一个Web应用或Web站点的过程中,你是如何考虑他的UI、安全性、高性能、SEO、可维护性以及技术因素的...
    Arno_z阅读 1,171评论 0 1
  • CSS Q: HTML引入CSS的方式有哪些? A: HTML element的style属性,HTML内部sty...
    赵长安啊阅读 602评论 0 7
  • HTML相关问题 1.XHTML和HTML有什么区别 HTML是一种基本的WEB网页设计语言,XHTML是一个基于...
    mickeylight阅读 1,332评论 1 4