我有一组图片应该根据浏览器的当前窗口大小调整大小。这是由CSS属性设置的;
#photoframe {
white-space:nowrap;
height:50%;
float:left;
}
#photoframe img {
height:100%;
width:auto;
}
现在使用chrome但不使用任何其他浏览器。
示例
此示例适用于chrome并且完全符合我的需要,但是此示例在IE或Firefox中不起作用?
我的代码
有人可能觉得这很有用。
完整的HTML
<!doctype html>
<!--[if lt IE 7]> <html class="ie6 oldie"> <![endif]-->
<!--[if IE 7]> <html class="ie7 oldie"> <![endif]-->
<!--[if IE 8]> <html class="ie8 oldie"> <![endif]-->
<!--[if gt IE 8]><!-->
<html class="">
<!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Untitled Document</title>
<link href="boilerplate.css" rel="stylesheet" type="text/css">
<link href="fluid.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="title">
<h1>Bass Clef Photography</h1>
</div>
<div id="tagline">Passion 4 Live Music & Passion 4 Photography</div>
<div id="tabsContainer">
<div id="centerContainer">
<div class='tab zero'>
<ul>
<li><a href="BassClef.html">Home</a></li>
</ul>
</div>
<div class='tab one'>
<ul>
<li><a href="#">Music Gallery</a></li>
</ul>
</div>
<div class='tab two'>
<ul>
<li><a href="#">About</a></li>
</ul>
</div>
<div class='tab three'>
<ul>
<li><a href="#">Clients</a></li>
</ul>
</div>
<div class='tab four'>
<ul>
<li><a href="#">Contact</a></li>
</ul>
</div>
<div class='tab five'>
<ul>
<li><a href="members.php">Members</a></li>
</ul>
</div>
</div>
</div>
<div id="photoframeContainer">
<div id="photoframe">
<img src="uploads/picture01.jpg" alt="">
<img src="uploads/picture02.jpg" alt="">
<img src="uploads/picture03.jpg" alt="">
<img src="uploads/picture04.jpg" alt="">
<img src="uploads/picture05.jpg" alt="">
<img src="uploads/picture06.jpg" alt="">
<img src="uploads/picture07.jpg" alt="">
<img src="uploads/picture08.jpg" alt="">
</div>
</div>
</body>
</html>
完整的CSS
@charset "utf-8";
/* Simple fluid media
Note: Fluid media requires that you remove the media's height and width attributes from the HTML
http://www.alistapart.com/articles/fluid-images/
*/
img, object, embed, video {
max-width: 100%;
}
/* IE 6 does not support max-width so default to width 100% */
.ie6 img {
width: 100%;
}
body, html{
width: 100%;
background-color:#424242;
overflow-y: hidden;
overflow-x: hidden;
margin: 0;
}
H1{
margin:0;
}
/*
Dreamweaver Fluid Grid Properties
----------------------------------
dw-num-cols-mobile: 5;
dw-num-cols-tablet: 8;
dw-num-cols-desktop: 10;
dw-gutter-percentage: 25;
Inspiration from "Responsive Web Design" by Ethan Marcotte
http://www.alistapart.com/articles/responsive-web-design
and Golden Grid System by Joni Korpi
http://goldengridsystem.com/
*/
/* Mobile Layout: 480px and below. */
#tabsContainer {
clear: both;
display: block;
top: 240px;
width: auto;
margin-top: 0;
margin-right: 0px;
margin-bottom: 0;
margin-left: 0px;
width: 100%;
height: 300px;
}
#centerContainer {
width: 230px;
height: 280px;
clear: none;
display: block;
margin: 0 auto;
}
#tabsContainer ul {
list-style: none;
margin: 0;
padding: 0;
font-size: 24px;
}
#tabsContainer ul li {
display: inline;
margin: 0px;
display: block;
text-decoration: none;
text-align: center;
line-height: 30px;
font-size: 24px;
}
#tabsContainer ul li a {
display: block;
float: left;
padding: 17px 15px 0 15px;
font: bold 12px Arial;
color: #000;
text-decoration: none;
font-size: 24px;
width: 200px;
}
#tabsContainer ul li a:hover {
color: #d3701e;
font-size: 24px;
}
#tabsContainer ul li #active a {
color: #d3701e;
background: url(images/navigation-hover.png) repeat-x left top;
}
.tab {
float: left;
font-size: 24px;
clear: both;
}
.tab.one {
width: 220px auto;
font-size: 24px;
white-space: nowrap;
}
.gridContainer {
margin-left: auto;
margin-right: auto;
width: 87.36%;
padding-left: 1.82%;
padding-right: 1.82%;
}
#LayoutDiv1 {
clear: both;
float: left;
margin-left: 0;
width: 100%;
display: block;
}
#title {
clear: both;
float: left;
top:0;
margin-left: 0;
width: 100%;
display: block;
font-size: xx-large;
text-align: center;
padding-left: 15px;
padding-right: 15px;
}
#tagline {
clear: both;
float: left;
top:100px;
margin-left: 0;
margin-top: 0;
width: 100%;
display: block;
font-size: x-large;
text-align: center;
padding-left: 15px;
padding-right: 15px;
color: #d3701e;
}
#photoframeContainer{
bottom:0px;
}
#photoframe {
white-space:nowrap;
height:50%;
float:left;
overflow-x:auto;
overflow-y: hidden;
}
#photoframe img {
height:70%;
width:auto;
/*max-width:100%;
min-width:100px;*/
}
/* Tablet Layout: 481px to 768px. Inherits styles from: Mobile Layout. */
@media only screen and (min-width: 481px) {
.gridContainer {
width: 90.675%;
padding-left: 1.1625%;
padding-right: 1.1625%;
}
#LayoutDiv1 {
clear: both;
float: left;
margin-left: 0;
width: 100%;
display: block;
}
#title {
clear: both;
float: left;
top:0px;
margin-left: 0;
width: 100%;
display: block;
text-align: center;
white-space:nowrap;
}
#tagline {
clear: both;
float: left;
top:140px;
margin-top: 0;
margin-left: 0;
width: 100%;
display: block;
text-align: center;
}
#tabsContainer {
float: left;
width: 100%;
display: block;
height: 200px;
top:200px;
}
#centerContainer {
width: 460px;
height: 150px;
clear: none;
display: block;
margin: 0 auto;
}
#tabsContainer ul {
list-style: none;
margin: 0;
padding: 0;
font-size: 24px;
}
#tabsContainer ul li {
display: inline;
margin: 0px;
display: block;
text-align: center;
line-height: 30px;
font-size: 24px;
}
#tabsContainer ul li a {
display: block;
float: left;
padding: 17px 15px 0 15px;
font: bold 12px Arial;
color: #000;
text-decoration: none;
font-size: 24px;
}
#tabsContainer ul li a:hover {
color: #d3701e;
font-size: 24px;
}
#tabsContainer ul li #active a {
color: #d3701e;
background: url(images/navigation-hover.png) repeat-x left top;
}
.tab {
float: left;
font-size: 24px;
clear: none;
}
.tab.one {
width: 220px auto;
font-size: 24px;
}
}
/* Desktop Layout: 769px to a max of 1232px. Inherits styles from: Mobile Layout and Tablet Layout. */
@media only screen and (min-width: 769px) {
.gridContainer {
width: 88.2%;
max-width: 1232px;
padding-left: 0.9%;
padding-right: 0.9%;
margin: auto;
}
#LayoutDiv1 {
clear: both;
float: left;
margin-left: 0;
width: 100%;
display: block;
}
#title {
clear: both;
float: left;
top:0px;
width: 100%;
display: block;
text-align: center;
}
#tagline {
clear: both;
float: left;
top:130px;
width: 100%;
display: block;
text-align: center;
}
#tabsContainer {
clear: both;
float: left;
top: 160px;
width: 100%;
display: block;
height: auto;
text-align: center;
}
#centerContainer {
width: 800px;
height: auto;
clear: both;
display: block;
margin: 0 auto;
}
#tabsContainer ul {
list-style: none;
margin: 0;
padding: 0;
font-size: 24px;
}
#tabsContainer ul li {
display: inline;
margin: 0px;
display: block;
text-align: center;
line-height: 30px;
font-size: 24px;
}
#tabsContainer ul li a {
display: block;
float: left;
padding: 17px 15px 0 15px;
font: bold 12px Arial;
color: #000;
text-decoration: none;
font-size: 24px;
width: auto;
}
#tabsContainer ul li a:hover {
color: #d3701e;
font-size: 24px;
}
#tabsContainer ul li #active a {
color: #d3701e;
background: url(images/navigation-hover.png) repeat-x left top;
}
.tab {
float: left;
font-size: 24px;
clear: none;
}
.tab.one {
width: 190px;
font-size: 24px;
white-space: nowrap;
}
}
答案 0 :(得分:1)
你尝试使用vw吗?
vw是观看宽度,vh是观看高度。它与百分比类似,但它总是取决于用户使用的屏幕。宽度:50vw;就像观看宽度的50%。
当你将它应用于图像时,它们会根据屏幕的宽度调整大小,而不是父母的div,所以它可能适合你。
抱歉一开始答案太短了。