基本问题是:当一个元素本身包含其他元素时,如何缩小它?
目标是在(居中)图像上设置(居中)菜单,其宽度和高度应与图像尺寸相关。 所有这些都是响应式的,意味着没有绝对的尺寸!
以下是示例代码:
<div id="menu">
<img src="picture.jpg" />
<div id="left">
test1
</div>
<div id="right">
test2
</div>
</div>
#menu{
position:relative;
display: table; /*tried inline-block as well */
text-align: center;
line-height: 1;
}
#menu img{
height: 90%;
position:relative;
}
#left{
width: 46%;
background-color: #ffcdcc;
float: left;
text-align: right;
}
#clear{
clear: both;
}
#right{
width: 46%;
background-color: #324344;
float: right;
text-align: left;
}
这应该是这样的:
____________________________________
| |
| ------------------------------ |
| | | |
| | p i c t u r e | |
| | | |
| | | |
| | | |
| | | |
| | left <button> right | |
| | | |
| ------------------------------ |
| |
------------------------------------
图片的高宽比始终相同。它的总大小取决于用户窗口。
我无法让“菜单”div环绕,并且“左”和“右”div可以同时定位。
这甚至可能吗?我甚至没有谈论浏览器的兼容性......
答案 0 :(得分:1)
看看是否有效:http://jsfiddle.net/sdvnh/1/
变更:
#menu {
display: block;
}
#menu img{
height: 90%;
width: 90%;
}