面试题基础—css

盒子模型
盒子模型
  1. 什么是盒子模型?
    就是一个包括四部分的元素
    1.context    内容区域
    2.padding   内边距
    3.border     边框
    4.margin    外边框

     

  2. 行内元素有哪些?块级元素有哪些? 空(void)元素有那些?

    a - 锚点

    * abbr - 缩写

    * acronym - 首字

    * b - 粗体 ( 不推荐 )

    * bdo - bidi override

    * big - 大字体

    * br - 换行

    * cite - 引用

    * code - 计算机代码 ( 在引用源码的时候需要 )

    * dfn - 定义字段

    * em - 强调

    * font - 字体设定 ( 不推荐 )

    * i - 斜体

    * img - 图片

    * input - 输入框

    * kbd - 定义键盘文本

    * label - 表格标签

    * q - 短引用

    * s - 中划线 ( 不推荐 )

    * samp - 定义范例计算机代码

    * select - 项目选择

    * small - 小字体文本

    * span - 常用内联容器,定义文本内区块

    * strike - 中划线

    * strong - 粗体强调

    * sub - 下标

    * sup - 上标

    * textarea - 多行文本输入框

    * tt - 电传文本

    * u - 下划线

    * var - 定义变量


    块元素:

    * address - 地址

    * blockquote - 块引用

    * center - 居中对齐块

    * dir - 目录列表

    * div - 常用块级容易,也是 css layout 的主要标签

    * dl - 定义列表

    * fieldset - form控制组

    * form - 交互表单

    * h1 - 大标题

    * h2 - 副标题

    * h3 - 3级标题

    * h4 - 4级标题

    * h5 - 5级标题

    * h6 - 6级标题

    * hr - 水平分隔线

    * isindex - input prompt

    * menu - 菜单列表

    * noframes - frames可选内容,(对于不支持 frame 的浏览器显示此区块内容

    * noscript - )可选脚本内容(对于不支持 script 的浏览器显示此内容)

    * ol - 排序表单

    * p - 段落

    * pre - 格式化文本

    * table - 表格

    * ul - 非排序列表
     

    可变元素

    可变元素为根据上下文语境决定该元素为块元素或者内联元素。

    * applet - java applet

    * button - 按钮

    * del - 删除文本

    * iframe - inline frame

    * ins - 插入的文本

    * map - 图片区块 (map)

    * object - object对象

    * script - 客户端脚本


    空元素:br hr link input img mate(没有内容填充的元素
  3. 行内元素和块元素的取别
    1.行内不能设置高度高度,可以设置行高
    2.行内元素内外边距对上下不起作用,左右起作用,块元素都有作用
    3.行内元素都在一行上,块级另起一行,可以用float:left使其浮动
    4.display:inline行内,display:block块级
  4. 水平居中,竖直居中怎么实现
    一道经典的问题,实现方法有很多种,以下是其中一种实现:

    HTML结构:

    <html>
        <head>
        </head>
        <body>
            <div class="wrapper">
    
        <div class="content"></div>
    
    </div>
    
    <style>
    
        .wrapper {
    
            position: relative;
    
            width: 500px;
    
            height: 500px;
    
            border: 1px solid red;
    
        }
    
      .content{
    
        position: absolute;
        
        width: 200px;
    
        height: 200px;
    
        /*top、bottom、left和right 均设置为0*/
    
        top: 0;
    
        bottom: 0;
    
        left: 0;
    
        right: 0;
    
        /*margin设置为auto*/
    
        margin:auto;
    
        border: 1px solid green;
    
        }
        <style>
        </body>
    </html>
    

     

  5. 简述一下src与href的区别
    href是一个外部资源没当前内容的链接,src是将所指定的外部资源替换到当前位置,加载时会暂停当前内容的加载


    href 是指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,用于超链接。并行加载改链接的内容不会停止对当前内容的加载,所以用import不如用link导入css

    src是指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置;在请求src资源时会将其指向的资源下载并应用到文档内,例如js脚本,img图片和frame等元素。当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内。这也是为什么将js脚本放在底部而不是头部。
     

  6. 简述同步和异步的区别

    同步是阻塞模式,异步是非阻塞模式。

    同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;

    异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。

  7. px和em的区别

    相同点:px和em都是长度单位;

    异同点:px是绝对的,em是相对的。px的值是固定的,指定是多少就是多少,计算比较容易。em得值不是固定的,并且em会继承父级元素的字体大小。

    浏览器的默认字体高都是16px。所以未经调整的浏览器都符合: 1em=16px。那么12px=0.75em, 10px=0.625em。

  8. 浏览器的内核分别是什么?

    IE: trident内核

    Firefox:gecko内核

    Safari:webkit内核

    Opera:以前是presto内核,Opera现已改用Google Chrome的Blink内核

    Chrome:Blink(基于webkit,Google与Opera Software共同开发)

  9. 什么叫优雅降级和渐进增强?

    渐进增强 progressive enhancement:

    针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验

    优雅降级 graceful degradation:

    一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。

    区别:

    a. 优雅降级是从复杂的现状开始,并试图减少用户体验的供给

    b. 渐进增强则是从一个非常基础的,能够起作用的版本开始,并不断扩充,以适应未来环境的需要

    c. 降级(功能衰减)意味着往回看;而渐进增强则意味着朝前看,同时保证其根基处于安全地带

  10. sessionStorage 、localStorage 和 cookie 之间的区别

    共同点:用于浏览器端存储的缓存数据

    不同点:

    (1)、存储内容是否发送到服务器端:当设置了Cookie后,数据会发送到服务器端,造成一定的宽带浪费;web storage,会将数据保存到本地,不会造成宽带浪费;

    (2)、数据存储大小不同:Cookie数据不能超过4K,适用于会话标识;web storage数据存储可以达到5M;

    (3)、数据存储的有效期限不同:cookie只在设置了Cookid过期时间之前一直有效,即使关闭窗口或者浏览器;

    sessionStorage:仅在关闭浏览器之前有效;localStorage:数据存储永久有效;

    (4)、作用域不同:cookie和localStorage是在同源同窗口中都是共享的;sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面。

    10、Web Storage与Cookie相比存在的优势:

    (1)、存储空间更大:IE8下每个独立的存储空间为10M,其他浏览器实现略有不同,但都比Cookie要大很多。

    (2)、存储内容不会发送到服务器:当设置了Cookie后,Cookie的内容会随着请求一并发送的服务器,这对于本地存储的数据是一种带宽浪费。而Web Storage中的数据则仅仅是存在本地,不会与服务器发生任何交互。

    (3)、更多丰富易用的接口:Web Storage提供了一套更为丰富的接口,如setItem,getItem,removeItem,clear等,使得数据操作更为简便。cookie需要自己封装。

    (4)、独立的存储空间:每个域(包括子域)有独立的存储空间,各个存储空间是完全独立的,因此不会造成数据混乱

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值