gpt4 book ai didi

jquery - 如何在不知道父级高度的情况下垂直居中 div?

转载 作者:行者123 更新时间:2023-11-28 11:22:10 25 4
gpt4 key购买 nike

你好,希望你能帮到我。我试图将一个 div 垂直居中,但我一直失败。我认为问题在于 div 是由 2 个元素组成的画廊- 不可滚动的主要图像,因为它们适合屏幕- 缩略图(通过 jquery 显示隐藏/显示并隐藏单击特定图标的主要图像)。我无法将子 div(画廊)居中,因为我无法为父级(页面容器)设置高度,因为我需要缩略图可以滚动。但我希望主要图像在页面中居中...

这是我的 html 代码(我保留了必要的部分):

<!--page -->
<div id="gallery-container">

<!-- main images -->
<div class="cycle-slideshow">
<img src="img.jpg">
</div>

<!-- thumbnails -->
<div class="thumbs">
<img src="img.jpg">
</div>

<!-- jquery hide/show code -->
<script type="text/javascript">
$('.thumbsicon').on('click', function() {
$('.cycle-slideshow').hide(); $('.thumbs').fadeIn();
});
$('.thumbs li img').on('click', function() {
var imgSrc = $(this).attr('src');
$('.cycle-slideshow').fadeIn('slow').css('background-image', 'url( + imgSrc + )');
$('.thumbs').hide();
});
</script>
</div>

还有 css(假设我的网站左侧有一个 250px 的侧边栏菜单):

#gallery-container{width:700px;z-index:70;margin:0   auto;position:relative;overflow:hidden;padding:0 20px 0 270px;}

.cycle-slideshow {width:700px;height:517px;margin:0 auto;padding:0;position:relative;}

.thumbs {position:relative; width:700px; margin:0 auto; padding:0; display:none;}

我尝试了很多 css 解决方案,但似乎都没有用。我能做些什么?提前致谢...

最佳答案

这是一个 stackoveflow,我不久前出于自己的目的改编了已接受答案的代码。这是我必须定位到窗口或父元素的内容:

Using jQuery to center a DIV on the screen

演示:http://jsfiddle.net/6P7AM/1/

jQuery.fn.center = function (centerToWindow) {
var parent = null;
var positionCss = null;
if (centerToWindow) {
parent = window;
positionCss = "absolute";
} else {
parent = this.parent();
positionCss = "relative";
}
this.css({
"position": positionCss,
"top": Math.max(0, (($(parent).height() - this.outerHeight()) / 2) + $(parent).scrollTop()) + "px",
"left": ((($(parent).width() - this.outerWidth()) / 2) + $(parent).scrollLeft() + "px")
});
return this;
}

$(function () {
$(window).resize(function () {
$("#gallery-container").center(true);
}).trigger("resize");
});

关于jquery - 如何在不知道父级高度的情况下垂直居中 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21485921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com