我继承了一个网站,其中单个图像横幅在左侧有一个徽标,在右侧有一个更大的徽标。
我已将横幅切成三个,bannerLeft、bannerRight 和一个名为bannerMiddle 的切片。
我想定位这三个,以便中间横幅会根据浏览器宽度拉伸和收缩,但是我需要有一个最小宽度,所以当中间横幅的宽度为 0 时,其他两个不换行。
左边的banner图片是100px宽,右边是420px宽,中间是10px宽,但需要拉伸
这是HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>title</title>
<link rel="stylesheet" href="main.css" />
</head>
<body>
<div id="bannerDiv">
<div id="bannerLeft"><img src="images/bannerLeft.png"></div>
<div id="bannerMiddle"><img src="images/bannerMiddle.png"></div>
<div id="bannerRight"><img src="images/bannerRight.png"></div>
</div>
</body>
</html>
不幸的是,这里的css不起作用
#bannerRight { float:left }
#bannerRight { float:right }
#bannerMiddle { width:100% }
我确信这是一个常见问题解答,但也是一个知道一点点伤害我的进步的问题,因为我无法找到搜索参数来找到最好的方法。我发现的所有推拉门都是无序列表中的按钮
问题:
- 我如何让这三张图片看起来像一张图片(就像他们现在在 SO 上所做的那样)
- 如何阻止横幅调整大小小于左右的组合宽度
这是3张图片:
实际上,如果重复-x,中间的会很丑,所以这里是另一个
更新
这不太管用 - 如果我将中间横幅设为 100%,它会溢出右侧横幅 请使用我的图片进行更新,因为右侧有圆角!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>title</title>
<style type="text/css">
#bannerDiv {min-height:98px; min-width:520px; position:relative;display:block;width:100%;padding:1px;}
#bannerLeft { display:block;position:absolute;top:0;left:0px;width:100px; height:98px}
#bannerRight { display:block;position:absolute;top:0;right:-10px;width:420px; height:98px}
#bannerMiddle { min-height:98px; display:block;position:absolute;top:0;left:100px; background-image:url(images/bannerMiddle.png)}
</style>
</head>
<body>
<div id="bannerDiv">
<div id="bannerLeft"><img src="images/bannerLeft.png" style="height:98px"></div>
<div id="bannerMiddle"></div>
<div id="bannerRight"><img src="images/bannerRight.png"></div>
</div>
</body>
</html>
更新 2
这暂时有效
<div id="bannerDiv"><img
id="bannerLeft" src="images/bannerLeft.png" /><img
id="bannerMiddle" src="images/bannerMiddle.png" /><img
id="bannerRight" src="images/bannerRight.png" /></div>
function resizeIt() {
$("#bannerDiv").width("100%");
var leftWidth = $("#bannerLeft").width(),
rightWidth = $("#bannerRight").width(),
newWidth=$("#bannerDiv").width()-(leftWidth+rightWidth);
$("#bannerMiddle").width(newWidth).height(98);
}
$(document).ready(function() {
resizeIt();
$(window).on("resize",resizeIt);
});