浏览器兼容性 问题产生原因 厂商前缀 滚动条 css hack 渐近增强 和 优雅降级 caniuse

article/2025/11/10 19:23:53

目录

  • 浏览器兼容性
    • 问题产生原因
    • 厂商前缀
      • 滚动条
    • css hack
    • 渐近增强 和 优雅降级
    • caniuse

浏览器兼容性

问题产生原因

  • 市场竞争
  • 标准版本的变化

厂商前缀

比如:box-sizing, 谷歌旧版本浏览器中使用-webkit-box-sizing:border-box

  • 市场竞争,标准没有发布
  • 标准仍在讨论中(草案),浏览器厂商希望先支持

下列是厂商前缀,有些低版本的浏览器,可能无法识别一些代码,加上厂商前缀就可以解决。

IE: -ms-
Chrome,safari: -webkit-
opera: -o-
firefox: -moz-

浏览器在处理样式或元素时,使用如下的方式:
当遇到无法识别的代码时,直接略过。

在这里插入图片描述
在这里插入图片描述

也可以安装这个插件,会在运行的时候自动出现厂商前缀

滚动条

  1. 谷歌浏览器的滚动条样式

实际上,在开发中使用自定义的滚动条,往往是使用div+css+JS实现的

设置两张图,一张图是大图、另一张是小图,px是图的像素点
2. 多个背景图中选一个作为背景

 <style>div{width: 500px;height: 500px;background-image: -webkit-image-set(url("img/small.jpg") 1x, url("img/big.jpg") 2x);background-size: 100%;}</style>
</head>
<body><div></div>
</body>
</html>

css hack

根据不同的浏览器(主要针对IE),设置不同的样式和元素

  1. 样式

IE中,CSS的特殊符号

  • *属性,兼容IE5、IE6、IE7
  • _属性,兼容IE5~IE6
  • 属性值\9,兼容IE5~IE11
  • 属性值\0,兼容IE8~IE11
  • 属性值\9\0,兼容IE9~IE10

IE5、6、7的外边距bug,浮动元素的左外边距翻倍

  1. 条件判断

渐近增强 和 优雅降级

两种解决兼容性问题的思路,会影响代码的书写风格

  • 渐近增强:先适应大部分浏览器,然后针对新版本浏览器加入新的样式

书写代码时,先尽量避免书写有兼容性问题的代码,完成之后,再逐步加入新标准中的代码。

  • 优雅降级:先制作完整的功能,然后针对低版本浏览器进行特殊处理

书写代码时,先不用特别在意兼容性,完成整个功能之后,再针对低版本浏览器处理样式。

caniuse

查找css兼容性

caniuse.com


http://chatgpt.dhexx.cn/article/Tu551uxi.shtml

相关文章

前端性能优化(二)02-页面性能优化之浏览器——浏览器是多进程的 浏览器的渲染机制

前端性能优化&#xff08;二&#xff09;02-页面性能优化之浏览器——浏览器是多进程的 & 浏览器的渲染机制 浏览器是多进程的 进程线程简单的理解&#xff1a;进程里面可以有多个线程&#xff0c;进程就是QQ&#xff0c;线程就是会话。 浏览器是多进程的浏览器之所以能够…

优化-浏览器缓存和压缩优化

一、减少HTTP请求 1.图片地图&#xff1a; 假设导航栏上有五幅图片&#xff0c;点击每张图片都会进入一个链接&#xff0c;这样五张导航的图片在加载时会产生5个HTTP请求。然而&#xff0c;使用一个图片地图可以提高效率&#xff0c;这样就只需要一个HTTP请求。 服务器端图片…

浏览器原理及性能优化

1. 影响页面性能的因素 HTTP 请求复杂的页面逻辑重度的DOM操作服务端响应大量的数据… 2. 优化网页性能 资源压缩与合并&#xff08;代码打包&#xff09;异步加载CDNDNS 预解析缓存… 一、浏览器 1.1 主要作用 浏览器的主要功能就是向服务器发出请求&#xff0c;在浏览器…

前端性能优化(三)——浏览器九大缓存方法

浏览器缓存是浏览器保存数据用于快速读取或避免请求重复资源&#xff0c;提升网页加载速度。缓存的数据到底放哪了呢&#xff1f;作为开发者&#xff0c;有时也需要检查一下缓存中的内容。所以介绍下缓存方法以及缓存内容在哪查找&#xff1f; 上一篇文章介绍的是《浏览器缓存…

chrome浏览器性能分析

匿名模式 匿名模式可以保证Chrome在一个相对干净的环境下运行。比如安装了许多chrome插件&#xff0c;这些插件可能会影响我们分析性能表现 使用快捷键ctrl shift N 即可代码匿名模式下的chrome新标签页 如果想分析移动设备 的页面性能&#xff0c;可用CPU控制器来模拟移动…

浏览器性能优化(初笔记后续修改补充)

参考&#xff1a;【前端工程师面试宝典】学习说明_互联网校招面试真题面经汇总_牛客网 (nowcoder.com) 性能优化 前端性能优化的手段 方面&#xff1a;加载优化、执行优化、渲染优化、样式优化、脚本优化 加载优化:减少HTTP请求、缓存资源、压缩代码、无阻塞、首屏加载、按需…

深入浏览器内部谈性能优化

1. 浏览器发展历史 a. 1995 年&#xff0c;美国网景公司因“网景浏览器”的发布而快速崛起 b. 同年&#xff0c;微软发布windows95&#xff0c;捆绑IE c. 2002年&#xff0c;微软占据了浏览器市场80%的份额 2. 浏览器三大进化路线&#xff08;Web应用能做的事以及未来发展趋…

GreenPlum数据库数据脱敏

1、首先备份要操作的数据库表&#xff0c;防止对原表误操作。 2、例子&#xff1a;数据库表名&#xff1a;st_person&#xff0c;要操作的字段为&#xff1a;phone 3、select phone from st_person ; --看看表里该字段是否有数据&#xff0c;大概格式是什么&#xff0c;该表…

数据库防火墙、数据库加密、数据库脱敏真的可用吗?

数据库是所有信息系统的核心&#xff0c;数据库的安全通常是指其中所存数据的安全&#xff0c;是网络安全、信息安全的重要组成部分。目前有很多相关性产品&#xff0c;如数据库加密、数据库防火墙、数据库脱敏、数据库审计等。 一、数据库防火墙 数据库防火墙系统&#xff1a;…

mysql动态脱敏查询_数据库动态脱敏

原标题&#xff1a;数据库动态脱敏 产品简介 中安威士数据动态脱敏系统(简称VS-DM)&#xff0c;通过截获并修改数据库通讯内容&#xff0c;对数据库中的敏感数据进行在线的屏蔽、变形、字符替换、随机替换等处理&#xff0c;达到对用户访问敏感数据真实内容的权限控制。对存储于…

MySQL 脱敏函数

项目场景&#xff1a; 示例:项目涉及到敏感数据&#xff0c;例如手机号、姓名等使用mysql存储函数解决。 解决方案&#xff1a; 提示&#xff1a;以下主要使用mysql函数CONCAT、LEFT、RIGHT。 1、CONCAT(str1,str2,…) CONCAT()函数返回结果为连接参数产生的字符串。如有任…

跨数据库跨系统,数据脱敏有新招

作者介绍 贝壳找房DBA团队&#xff0c;负责链家、贝壳找房的数据库服务治理及运维&#xff0c;包括MySQL、Redis、Kafka、RocketMQ、TiDB等产品。为保证线上服务高效、安全、稳定运行&#xff0c;面向研发同学提供一站式的数据库操作平台&#xff0c;建设了满足99.99%标准的高可…

imperva数据库脱敏-server2008

首先安装一个server2008其他的server也行 然后安装java环境 后安装tomcat中间件 一路默认就好 这就是tomcat的控制台 然后安装postgresql数据库 官方的要求是9.1-9.3的版本。 这个数据库也是默认安装就好。里面的密码我设的的Webco123 数据库安装完成 下一步安装发现脱敏的控…

《Sharding-JDBC》——数据库分表+数据库脱敏实现方案

本文从实际情况出发&#xff0c;解决生产中单表数据过大&#xff0c;和数据被拖库导致的问题&#xff0c;并进行的解决方案。本案例使用的框架为轻量型的jfinal&#xff0c;分表数据库脱敏&#xff0c;均采用了Apache的shardingsphere。 首先我们要先明确这样一个业务场景&…

mysql数据脱敏_数据脱敏|静态脱敏|动态脱敏—数据库脱敏_产品

1、敏感数据自动识别 数据脱敏系统可通过预定义敏感数据特征库&#xff0c;在任务执行过程中通过智能匹配识别敏感数据&#xff0c;最大限度的实现脱敏工作自动化&#xff0c;简化以手工方式按字段名定义敏感数据的繁琐工作。 2、丰富的脱敏算法 数据脱敏系统内置同义替换、数据…

使用sql语句对数据库脱敏

最近帮领导整理了一下数据库&#xff0c;给数据库的某些字段进行脱敏&#xff0c;现在整理一下&#xff0c;嘻嘻 1、姓名脱敏 update table set 列 REPLACE(列,SUBSTR(列,2,1),*) 姓名脱敏之后的效果&#xff1a; 2、手机号脱敏 UPDATE table SET 列 ( CASE WHEN 列 IS NO…

数据库脱敏(mybatis 拦截器实现)

1.使用数据库本身自有的函数进行加密 UPDATE tuc_user SET mobileNo HEX(AES_ENCRYPT(mobileNo, ‘xxxxxx’)); 2.注解类 2.1 SensitiveData package com.wisedu.campuses.sensitive;import java.lang.annotation.*;/*** author MR.MEI*/ Inherited Target({ElementType.T…

数据库安全关键技术之数据库脱敏技术详解

数据库脱敏是一种采用专门的脱敏算法对敏感数据进行变形、屏蔽、替换、随机化、加密&#xff0c;并将敏感数据转化为虚构数据的技术。按照作用位置、实现原理不同&#xff0c;数据脱敏可以划分为静态数据脱敏&#xff08;Static Data Masking, SDM )和动态数据脱敏&#xff08;…

网页数据库设计

这次是找一个网页,写er图,然后根据er图设计模型,然后生成数据库表 我找的是起点中文网,根据这个网站做了分析,画了e-r图. 模型

Java网页应用之实现对数据库的增、删、改、查。

模拟信息管理系统 通过eclipse实现网页、数据库的连接&#xff0c;实现对数据库的增、删、改、查。 登陆页面&#xff1a; 登陆成功界面&#xff1a; 添加信息界面&#xff1a; 修改信息界面&#xff1a; 删除信息界面&#xff1a; package com.lq.pro_user.dao;import …