w3c认为margin叠加是合理的。不管是不是bug,但是这个问题真的存在。看下面这个例子:
- < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- head><head>
- <style type="text/css">
- *{padding:0;margin:0;}
- .box{background:#ccc; }
- .content{background:#eee;margin: 20px auto;}
- .an-box{ margin:50px auto;background:#999999;}
- style>
- head>
- <body>
- <div class="box">
- <div class="content">margin: 20px autodiv>
- <div class="content">margin: 20px autodiv>
- div>
- <div class="box">
- <div class="content">margin: 20px autodiv>
- div>
- <div class="box">
- <div class="content">margin: 20px autodiv>
- div>
- <div class="an-box">margin: 50px autodiv>
- body>
- html>
解决这个问题的方法有不少,先来看看这个,在外层的容器中加:overflow:hidden;zoom:1;
- < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- head><head>
- <style type="text/css">
- *{padding:0;margin:0;}
- .box{background:#ccc; overflow:hidden;zoom:1 }
- .content{background:#eee;margin: 20px auto; }
- .an-box{ margin:50px auto;background:#999999;}
- style>
- head>
- <body>
- <div class="box">
- <div class="content">这里两个还是存在叠加margin: 20px autodiv>
- <div class="content">这里两个还是存在叠加margin: 20px autodiv>
- div>
- <div class="box">
- <div class="content">margin: 20px autodiv>
- div>
- <div class="box">
- <div class="content">margin: 20px autodiv>
- div>
- <div class="an-box">margin: 50px autodiv>
- body>
- html>
还有外层的容器中加边框属性,在叠加元素加空块状元素等等。。还有就是用padding来取代margin
我的博物馆故事 官方安卓版v1.61.2
我的博物馆故事是一款以消除为主题的经营养成类手游,在这里玩家
专业模拟飞行10 手机版v12.2.4
专业模拟飞行10安卓版是一款飞行休闲手游,顶尖的物理飞行引擎
动物起义战斗模拟器二琳同款 最新版v4.1.1
动物起义战斗模拟器是一个非常有趣的模拟类游戏,玩家可以召唤各
迷你世界七周年 安卓手机版v1.43.0
迷你世界7周年是一款由《迷你世界》官方推出的庆祝特别版本,在
劫后公司无限资源版 v1.0.5.1
劫后公司内置菜单版是游戏的破解版本,在该版本中为玩家提供了内