首页 > 其他分享 >HTML5+CSS3面试题:(第四天)

HTML5+CSS3面试题:(第四天)

时间:2024-09-18 18:19:30浏览次数:10  
标签:CSS3 面试题 浏览器 对象 sessionStorage cookie HTML5 localStorage

目录

13.cookie、localStorage、sessionStorage区别

14.简述window对象除 document以外的一些常用子对象,并描述其作用?

15.css中水平垂直居中的方法有哪些?

16.css如何做兼容的?


13.cookie、localStorage、sessionStorage区别

1.先介绍下

cookie、localStorage、sessionStorage这三者都可以被用来在浏览器端存储数据,而且都是字符串类型的键值对。

Cookie是服务器发送到用户浏览器并保存在浏览器上的一块数据, 它会在浏览器下一次发起请求时被携带并发送到服务器上。可以它用来确定两次请求是否来自于同一个浏 览器,从而能够确认和保持用户的登录状态。Cookie的使用使得基于无状态的HTTP协议上记录稳定的状态信息成为了可能。

localStorage和sessionStorage 是 HTML5 标准中新加入的技术,可以用来存储数据。

2.不同点

1.与服务器之间的通讯:

cookie在浏览器与服务器之间来回传递,每次都会携带在HTTP头中,作用是与服务器进行交互,作为http规范的一部分而存在的,如果使用cookie保存过多数据会带来性能问题;

localstorage和sessionstorage不参与和服务器间的通信,不会把数据发给服务器,仅在本地保存,存储在本地的数据可以直接获取。

2.存储大小:

cookie存储大小为4k

localStorage和sessionStorage的存储数据大小一般都是:5MB

3.存储内容类型:

会话cookie一般不存储在硬盘而是保存在内存里,当然这个行为并不是规范规定的。若设置了过期时间,浏览器就会把cookie保存到硬盘上。

localStorage和sessionStorage只能存储字符串类型,对于复杂的对象可以使用ECMAScript提供的JSON对象的stringify和parse来处理;

4.数据有效期:

cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。

localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;

sessionStorage:仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持;

5.作用域不同:

cookie也是在所有同源窗口中都是共享的,cookie在不设置过期时间的前提下,只在当前的会话有效。

localStorage在所有同源窗口中都是共享的,同浏览器无法共享local和session的信息,同浏览器下,local可以在不同页面 (指的是相同域名和端口的下的不同页面) 共享相同的local数据;

sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面,不同页面或标签页间无法共享sessionStorage的信息,需要注意页面及标签页仅指顶级窗口,如果一个标签页包含多个iframe标签且他们属于同源页面,那么他们之间是可以共享sessionStorage的;

6.应用场景:

cookie的作用:主要用于保存登录信息,设置“每次请求都要携带的信息(最典型的就是身份认证信息)”就特别适合放在cookie中 。

localStoragese:常用于长期登录(+判断用户是否已登录),适合长期保存在本地的数据;

sessionStorage:敏感账号一次性登录;

14.简述window对象除 document以外的一些常用子对象,并描述其作用?

window对象有很多子对象,除了 document以外,还有如下常用子对象:

  • screen对象:此对象包含有关客户端显示屏幕的信息
  • history对象:此对象包含用户访问过的 URL;
  • location对象:此对象包含有关当前 URL的信息
  • navigator对象:此对象包含有关浏览器的信息
  • event对象:任何事件触发后将会产生一个 event对象

15.css中水平垂直居中的方法有哪些?

  • 盒子:
  • 盒子定宽居中
    ①absolute+负margin
    ②absolute+margin:auto
    ③absolute+calc
    不定宽居中
    ①absolute + transform
    ②flex

  • 文本(内联元素)水平垂直居中
  • text-align:center:
    line-height:盒子高度;

    16.css如何做兼容的?

    **了解以下内容-不背诵**

    从技术出发

    前缀CSS3(-webkit- / -moz- / -o-*)和正常CSS3在浏览器中的支持情况是这样的:

    1.之前:浏览器只支持前缀CSS3,不支持正常CSS3;

    2.现在:浏览器既支持前缀CSS3,又支持正常CSS3;

  • .transition { /*渐进增强写法*/
    
    -webkit-border-radius:30px 10px;
    
    -moz-border-radius:30px 10px;
    
    border-radius:30px 10px;
    
    }
    
    .transition { /*优雅降级写法*/
    
    border-radius:30px 10px;
    
    -moz-border-radius:30px 10px;
    
    -webkit-border-radius:30px 10px;
    
    }

标签:CSS3,面试题,浏览器,对象,sessionStorage,cookie,HTML5,localStorage
From: https://blog.csdn.net/m0_71805303/article/details/142279689

相关文章

  • Springboot基于HTML5+CSS3的信息化农村综合服务平台690g7
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景与意义随着信息技术的飞速发展,信息化已成为推动农村经济社会发展的重要力量。构建基于HTML5+CSS3的信息化农村综合服务平台,旨在利用现......
  • C++面试题整理 2
    8.C++11新特性又哪些自动类型推导auto,智能指指针(share_ptr,unique_ptr等),for循环简化,线程相关的(std::thread/std::mutex),空指针nullptr,lambda表达式,等等9.share_ptr是线程安全的吗share_ptr里包含引用计数和数据指针,引用计数是原子操作,线程安全的,但是改变数据指针的指向,......
  • 【Kubernetes】常见面试题汇总(二十二)
    目录68.简述Helm及其优势?特别说明:题目1-68属于【Kubernetes】的常规概念题。68.简述Helm及其优势?(1)Helm是Kubernetes的软件包管理工具。类似Ubuntu中使用的apt、Centos中使用的yum或者Python中的pip一样。(2)Helm能够将一组K8S资源打包统一管理,是查......
  • 【Kubernetes】常见面试题汇总(二十一)
    目录65.简述Kubernetes中,如何使用EFK实现日志的统一管理?66.简述Kubernetes如何进行优雅的节点关机维护?67.简述Kubernetes集群联邦?65.简述Kubernetes中,如何使用EFK实现日志的统一管理?-在Kubernetes集群环境中,通常一个完整的应用或服务涉及组件过多,建议对......
  • ChatGPT中Java相关问答(包括Java基础知识和一些面试题)
    分享一个自己学习Java时的记录ChatGPT中的对话:ChatGPT链接包括如下问题HowtolearnJavainordertobecomeasoftwaredevelopmentengineer,pleasegivedetailsofthestudyprogramaswellasthereferencestudymaterials.详细解释java中的this引用解释一下类、......
  • 软件测试面试题(4)——二面
    是二轮,线上笔试后的约的线下面试,这里我记录一下面试过程中大概遇到的问题。        1、设计测试用例的主要方法:流程图法,等价类划分,边界值分析法,因果图法等等这里他问我熟悉哪种方法,给他讲一下:(我说的流程图,问我用什么画图,我回答是亿图图示)(1)流程图法定义:根据软件的......
  • 基于HTML5红酒公司仓库管理系统设计与实现
      1项目介绍1.1摘要随着社会经济与科技的迅猛发展,互联网技术的不断革新深刻影响着各行各业。尽管如此,红酒销售管理领域仍普遍采用传统的人工作业方式,依赖大量人力和纸质记录,这不仅效率低下,而且错误频发,无法满足现代商业环境的高效与精确要求,频繁导致资源浪费和财产损失。......
  • 这些年没来得及学习的一些 HTML5 标签
    认识并学习下还没来得及学习的一些HTML5标签<ruby>标签HTML <ruby> 元素被用来展示东亚文字注音或字符注释。比如:<ruby>兄弟<rt>xiongdi</rt></ruby><rt>元素包含字符的发音,字符在ruby注解中出现,它用于描述东亚字符的发音。这个元素始终在 <ruby> 元素中使用。......
  • C++: 二叉树进阶面试题
    做每件事之前都心存诚意,就会事半功倍.目录前言1.根据二叉树创建字符串2.二叉树的层序遍历Ⅰ3.二叉树的层序遍历Ⅱ4.二叉树的最近公共祖先5.二叉搜索树与双向链表6.根据一棵树的前序遍历与中序遍历构造二叉树7.根据一棵树的中序遍历与后序遍历构造二叉树8.二......
  • Mysql 面试题总结
    1.Mysql数据库,隔离级别有哪几个?在MySQL数据库中,事务的隔离级别决定了一个事务在执行期间对其他事务可见的数据变化情况。MySQL支持SQL标准定义的四种隔离级别,从低到高依次为:读未提交(READUNCOMMITTED)在该隔离级别下,事务中的修改即使没有提交,对其他事务也是可见的。......