我在调整窗口大小时遇到了这个网站的问题:http: //goo.gl/BaIuy
让我试着解释一下。如您所见,我正在尝试实现在鱼缸中的体验。它由 4 个不同的容器制成,一个用于水背景,一个用于内容,另一个用于鱼图像,最后一个用于浮木和海藻等图形对象。
每个容器,除了一个用于水背景的容器,都有一个<ul id="mask">
比窗口大小宽 600% 的主容器。这ul#mask
包含六个<li>
元素,它们对应于网站的每个部分,每个部分的宽度为窗口大小的 100%。
<ul id="mask">
<li id="home" class="box"></li>
<li id="about" class="box"></li>
<li id="services" class="box"></li>
<li id="clients" class="box"></li>
<li id="give" class="box"></li>
<li id="contact" class="box"></div></li>
</ul>
#mask {
float: left;
padding: 0;
width: 600%;
}
#mask > li {
float: left;
list-style: none;
width: 16.66666666%;
}
问题是,当您位于与第一个(第一个<li id="home">
)不同的部分并调整窗口大小时,所有<li>
元素开始减小其宽度但当前<li>
不再填满窗口大小并且其他<li>
元素开始出现在屏幕中由于调整大小操作。
我已经尝试通过使用javascript计算宽度来为元素提供调整大小的宽度,并停用样式表中元素的宽度,以便javascript在页面加载时为其提供窗口宽度。但似乎缺少某些东西或者我'我做错了,看看这里:
$(function () {
$('.header').fadeIn(1600);
$('.mainWrapper ul#mask').fadeIn(4000);
$('.secondLayer ul#mask').fadeIn(4000);
$('.thirdLayer ul#mask').fadeIn(4000);
$('ul#mask').css({width: '600%'});
$('ul#mask li').css({width: '16.66666666%'});
$(window).resize(function() {
var viewPortSize = $(window).width();
var maskSize = parseInt(viewPortSize)*6
var maskLiSize = parseInt(maskSize)/6
$('ul#mask').width(maskSize);
$('ul#mask li').width(maskLiSize);
});
});
#mask {
display: none;
float: left;
padding: 0;
/* width: 600%; */
}
#mask > li {
float: left;
list-style: none;
/* width: 16.66666666%; */
}
我希望有人可以帮助并感谢您抽出时间来看看这个。