宽高自适应以及常见浏览器兼容

2023-11-03 03:32

本文主要是介绍宽高自适应以及常见浏览器兼容,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(一)宽度自适应
1.若块级元素宽度不设置,或者设置成100%,都是占据其父级元素的一整行
应用场景:
(1)页面最外层的盒子一般都要占据屏幕的大小,所以宽度100%。
(2)子元素使用百分比表示盒模型任意部分大小的话,代表的是子元素盒模型任意部分尺寸=父元素宽度百分比(除了高度外,子元素高度=父元素高度百分比)==>忽略;
(二)高度自适应

 1.父元素高度由子元素撑开(1)若是子元素都浮动了,父元素不会被撑开解决办法(清除浮动):* 给父元素添加最后一个子元素(块级元素){ height:0;overflow:hidden;clear:both;} 缺点:造成不必要的浪费* 给父元素添加{overflow:hidden;} 缺点:可能造成需要的部分被隐藏掉* 伪元素清除法..clearfix::after{content:"";display:block;height:0;overflow:hidden;visibility:hidden;cl			ear:both;zoom:1;}  ==>base.css(2)预防子元素会没有内容,撑不开父元素的情况解决办法:给父元素添加最小高度min-height。(当内容高度小于最小高度时,按最小高度显示。当内容高度大于最小高度时,			按内容高度显示)兼容写法:{min-height:;_height:;}
2.高度自适应窗口高度body,html{height:100%;}最外层的大盒子{height:100%;}

1.浏览器及内核


ie                  trident
firefox              	gecko
opera               presto
safari、chrome       webkit
chrome、opera       blink

2.浏览器兼容

(1)图片有边框(IE8以下) a>img          img{border:0 none;}
(2)图片有间隙div>img                 img{display:block;}
(3)双倍浮向问题 浮向边的margin会双倍显示(ie6)      {display:inline-block;}做页面避免设置左右的margin
(4)默认高度(16px、ie6)          {font-size:0}    {overflow:hidden;}
(5)表单元素行高不一致   {float}   {vertical-align:middle;} 
(6)表单元素样式不一致      外层嵌套一个元素,将表单元素的样式赋给这个外层元素/a标签模拟
(7)百分比bug(ie6)       平时做页面不要做太满。如果都左浮动,最后一个清除右浮动 clear:leftdisplay:inline-block;===>float(8)高度塌陷:子元素都浮动了,父元素会没有高度 解决办法:两种 
1)给父元素加overflow:hidden;
2)万能清除法/伪类清除法(9)margin塌陷:第一个子元素与父元素存在上间距,如果给第一个子元素加margin-top,	则会错误地渲染到父元素上。   解决办法:四种(10)margin合并:垂直排列摆放,上一个元素的margin-bottom,跟下一个元素的margin-top,	会发生合并,取较大值
解决方法:给上边盒子添加空标签,并给空标签overflow:hidden;(11)透明度opacity:0-1;filter:alpha(opacity=0-100)  (ie)(12)手型	cursor:hand; (ie)cursor:pointer;

这篇关于宽高自适应以及常见浏览器兼容的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/335299

相关文章

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻

SpringBoot整合Kafka启动失败的常见错误问题总结(推荐)

《SpringBoot整合Kafka启动失败的常见错误问题总结(推荐)》本文总结了SpringBoot项目整合Kafka启动失败的常见错误,包括Kafka服务器连接问题、序列化配置错误、依赖配置问题、... 目录一、Kafka服务器连接问题1. Kafka服务器无法连接2. 开发环境与生产环境网络不通二、序

在C#中调用Windows防火墙界面的常见方式

《在C#中调用Windows防火墙界面的常见方式》在C#中调用Windows防火墙界面(基础设置或高级安全设置),可以使用进程启动(Process.Start)或Win32API来实现,所以本文给大家... 目录引言1. 直接启动防火墙界面(1) 打开基本防火墙设置(firewall.cpl)(2) 打开高

MySQL中如何求平均值常见实例(AVG函数详解)

《MySQL中如何求平均值常见实例(AVG函数详解)》MySQLavg()是一个聚合函数,用于返回各种记录中表达式的平均值,:本文主要介绍MySQL中用AVG函数如何求平均值的相关资料,文中通过代... 目录前言一、基本语法二、示例讲解1. 计算全表平均分2. 计算某门课程的平均分(例如:Math)三、结合

OFD格式文件及如何适应Python将PDF转换为OFD格式文件

《OFD格式文件及如何适应Python将PDF转换为OFD格式文件》OFD是中国自主研发的一种固定版式文档格式,主要用于电子公文、档案管理等领域,:本文主要介绍OFD格式文件及如何适应Python... 目录前言什么是OFD格式文档?使用python easyofd库将PDF转换为OFD第一步:安装 eas

MyBatis Plus中执行原生SQL语句方法常见方案

《MyBatisPlus中执行原生SQL语句方法常见方案》MyBatisPlus提供了多种执行原生SQL语句的方法,包括使用SqlRunner工具类、@Select注解和XML映射文件,每种方法都有... 目录 如何使用这些方法1. 使用 SqlRunner 工具类2. 使用 @Select 注解3. 使用

JS纯前端实现浏览器语音播报、朗读功能的完整代码

《JS纯前端实现浏览器语音播报、朗读功能的完整代码》在现代互联网的发展中,语音技术正逐渐成为改变用户体验的重要一环,下面:本文主要介绍JS纯前端实现浏览器语音播报、朗读功能的相关资料,文中通过代码... 目录一、朗读单条文本:① 语音自选参数,按钮控制语音:② 效果图:二、朗读多条文本:① 语音有默认值:②

Redis高性能Key-Value存储与缓存利器常见解决方案

《Redis高性能Key-Value存储与缓存利器常见解决方案》Redis是高性能内存Key-Value存储系统,支持丰富数据类型与持久化方案(RDB/AOF),本文给大家介绍Redis高性能Key-... 目录Redis:高性能Key-Value存储与缓存利器什么是Redis?为什么选择Redis?Red

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

MySQL ORDER BY 语句常见用法、示例详解

《MySQLORDERBY语句常见用法、示例详解》ORDERBY是结构化查询语言(SQL)中的关键字,隶属于SELECT语句的子句结构,用于对查询结果集按指定列进行排序,本文给大家介绍MySQL... 目录mysql ORDER BY 语句详细说明1.基本语法2.排序方向详解3.多列排序4.常见用法示例5.