我正在制作一个完全适合任何屏幕的菜单,但它的高度不会改变(只有它的宽度)。
问题是:我的菜单分为3个图像(左,中,右)。 中间图像调整大小以适应屏幕(我推荐70%),但是当屏幕宽度较小时,菜单的两边会断开线条,如下所示:
我需要这方面的解决方案或其他方法来制作此菜单!
它必须占据整个宽度并且两侧都有渐变。
<!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>
<script>
var onre = function(){
var w = document.getElementById('make2fit').offsetWidth;
var h = document.getElementById('make2fit').offsetHeight;
var ww = window.innerWidth;
var wh = window.innerHeight;
var p = (Math.floor((ww/wh)*100)/100<1)?(ww/w):(wh/h);
var nw = Math.round(w * p);
var nh = Math.round(h * p);
document.getElementById("make2fit").width = nw;
document.getElementById("make2fit").height = nh;
}
window.onresize = onre;
window.onload = onre;
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Silvania Miranda</title>
<style type="text/css">
body {
background-color: #030708;
}
div.menu {
/* current css */
min-width:960px; /* which is the current minimum width for designing website for desktops */
height:auto;
width:auto;
margin-right:auto;
margin-left:auto;
position:relative;
top:510px;
overflow:hidden;
}
ul li {
/* current css */
display:block; /* default display for list elements, could be omitted */
float:left;
width:30%;
max-width:125px;
min-width:50px;
color:white;
}
ul {
/* current css */
overflow:hidden
}
div.mulher{
width:auto;
height:auto;
z-index:-1;
bottom:0px;
right:0px;
position:absolute;
}
div.fundo{
position:absolute;
width:100%;
height:auto;
bottom:15%;
}
div.fundomenu{
background:url(menufundo.png);
width:80%;
height:60px;
position:relative;
margin-right:auto;
margin-left:auto;
z-index:0;
float:left}
div.cantomenu
{position:relative;
height:60px;
width:156px;
overflow:hidden;
z-index:100;
float:left}
div.esq{background:url(menupontae.png)}
div.dir{background:url(menupontad.png)}
</style>
</head>
<body>
<div class="mulher"><img src="mulher.png" id="make2fit" style="margin:0px;"/></div>
<div class="fundo">
<div class="esq cantomenu"></div>
<div class="fundomenu"></div>
<div class="dir cantomenu"></div>
</div>
</body>
</html>
答案 0 :(得分:0)
这里真正安全的选择是使用1行3列的表。这将为您提供所需的列(左,右,中),并保持宽度。关于列的背景图像,您可能需要考虑如何设计和剪切它们以使其看起来很好。
这里的另一个选择是html css&amp;的组合。 javascript - 唯一的问题是,如果浏览器不支持JS,那么您的网站看起来不会正确。
这有帮助吗?