我正在尝试使用min-width和max-width调整CSS页面布局。为了简化问题,我制作了这个测试页面。我正在最新版本的Firefox和Chrome中尝试使用相同的结果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Testing min-width and max-width</title>
<style type="text/css">
div{float: left; max-width: 400px; min-width: 200px;}
div.a{background: orange;}
div.b{background: gray;}
</style>
</head>
<body>
<div class="a">
(Giant block of filler text here)
</div>
<div class="b">
(Giant block of filler text here)
</div>
</body>
</html>
以下是我期望发生的事情:
这是实际发生的原因,从第2步开始:
所以这是我的问题:
max-width
如果元素在布局中的下降速度低于其最大宽度,则意味着什么?min-width
如果元素会比浏览器窗口不断缩小的情况变得更窄,那么{{1}}意味着什么?当然......
我做错了什么?
答案 0 :(得分:1)
他们“下降”的原因是由于父元素的大小发生变化(在这种情况下为body
)。在它们周围放一个宽度为400像素或更多的包装div
,你可以让它们并排坐着。
答案 1 :(得分:1)
我认为(这仅仅来自我个人的经验),max-width适用于div内的内容。因此,如果div内只有1个字,则宽度为200px,但如果div中有300个字,宽度将为400px宽。
我认为有办法做你想做的事。本文可能与之相关:
http://net.tutsplus.com/tutorials/design-tutorials/quick-tip-different-layouts-for-different-widths/
祝你好运。答案 2 :(得分:1)
至少回答一下:
min-width
确实是关于浏览器何时应该为页面显示水平滚动条。
虽然试验浮动只有在设置width
时才能正常工作,所以我会使用设置了最小和最大宽度的父div
并向孩子添加width: 50%
div的。这解决了除div更改布局之外的所有问题。为此,我可能会参考javascript。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Testing min-width and max-width</title>
<style type="text/css">
div.cont {max-width: 700px; min-width: 400px;}
div.a, div.b {float: left; width: 50%; }
div.a{background: orange;}
div.b{background: gray;}
</style>
</head>
<body>
<div class="cont">
<div class="a">
Morbi malesuada nulla nec purus convallis consequat...
</div>
<div class="b">
Vivamus id mollis quam. Morbi ac commodo nulla...
</div>
</div>
</body>
</html>