Javascript 如何在屏幕中央调整绝对div
我创建了一个带有小图像的页面,我想当它被点击时,然后在一个绝对div中打开大图像,这才是真正的工作。但当窗口显示页面底部时,我们会单击小图像,它会出现在屏幕顶部,我不喜欢它。我希望它每次都出现在屏幕中央,请在此页面中查看: 我的代码示例是: HTML代码:Javascript 如何在屏幕中央调整绝对div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我创建了一个带有小图像的页面,我想当它被点击时,然后在一个绝对div中打开大图像,这才是真正的工作。但当窗口显示页面底部时,我们会单击小图像,它会出现在屏幕顶部,我不喜欢它。我希望它每次都出现在屏幕中央,请在此页面中查看: 我的代码示例是: HTML代码: <!-- This is Div of Large Image and Background Shade --> <div class="BackgroudShade"></div> <div cl
<!-- This is Div of Large Image and Background Shade -->
<div class="BackgroudShade"></div>
<div class="DivOfImage"><img class="LargeImage"/></div>
JQuery代码:
将
left
和right
添加为0
并使用margin:0 auto
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
}
这是为了使div水平居中而不是垂直居中。将
左
和右
添加为0
,并使用边距:0自动
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
}
这是为了使div水平居中而不是垂直居中。将
左
和右
添加为0
,并使用边距:0自动
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
}
这是为了使div水平居中而不是垂直居中。将
左
和右
添加为0
,并使用边距:0自动
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
}
<>这是为了使div水平中心不是垂直中间的。 不需要使用所有的JS来计算并显示屏幕中间的图像。 您可以使用CSS设置样式和位置,然后使用JS隐藏/显示。你的位置:固定;然后你就可以更容易地定义屏幕上的位置了 试着这样做:
function LoadShowDiv () {
$('.BackgroudShade').slideDown(800); // shade of background will be visible
$(".DivOfImage").show(); // Div of Large Image will be visible
// When Image loaded successful then set width,height and top,left of Large Image Div
// but i want set top,left when screen is scroll down to bottom of page
// then show Div at middle of screen in every time
$('.LargeImage').load(function() {
$('.DivOfImage').width($('.LargeImage').width());
$('.DivOfImage').height($('.LargeImage').height());
var LeftPostion = (WidthOfScreen - $('.LargeImage').width()) / 2;
var TopPostion = (HeightOfScreen - $('.LargeImage').height()) / 2;
$(".DivOfImage").offset({ top: TopPostion, left: LeftPostion});
$('.LargeImage').show(1000);
})
}
$('#SmallImage').click(function(){
$('.LargeImage').attr('src','LargeImage.jpg');
LoadShowDiv();
})
这将使图像处于屏幕的中心
不需要使用所有这些JS来计算并显示屏幕中间的图像。 您可以使用CSS设置样式和位置,然后使用JS隐藏/显示。你的位置:固定;然后你就可以更容易地定义屏幕上的位置了 试着这样做:function LoadShowDiv () {
$('.BackgroudShade').slideDown(800); // shade of background will be visible
$(".DivOfImage").show(); // Div of Large Image will be visible
// When Image loaded successful then set width,height and top,left of Large Image Div
// but i want set top,left when screen is scroll down to bottom of page
// then show Div at middle of screen in every time
$('.LargeImage').load(function() {
$('.DivOfImage').width($('.LargeImage').width());
$('.DivOfImage').height($('.LargeImage').height());
var LeftPostion = (WidthOfScreen - $('.LargeImage').width()) / 2;
var TopPostion = (HeightOfScreen - $('.LargeImage').height()) / 2;
$(".DivOfImage").offset({ top: TopPostion, left: LeftPostion});
$('.LargeImage').show(1000);
})
}
$('#SmallImage').click(function(){
$('.LargeImage').attr('src','LargeImage.jpg');
LoadShowDiv();
})
这将使图像处于屏幕的中心
不需要使用所有这些JS来计算并显示屏幕中间的图像。 您可以使用CSS设置样式和位置,然后使用JS隐藏/显示。你的位置:固定;然后你就可以更容易地定义屏幕上的位置了 试着这样做:function LoadShowDiv () {
$('.BackgroudShade').slideDown(800); // shade of background will be visible
$(".DivOfImage").show(); // Div of Large Image will be visible
// When Image loaded successful then set width,height and top,left of Large Image Div
// but i want set top,left when screen is scroll down to bottom of page
// then show Div at middle of screen in every time
$('.LargeImage').load(function() {
$('.DivOfImage').width($('.LargeImage').width());
$('.DivOfImage').height($('.LargeImage').height());
var LeftPostion = (WidthOfScreen - $('.LargeImage').width()) / 2;
var TopPostion = (HeightOfScreen - $('.LargeImage').height()) / 2;
$(".DivOfImage").offset({ top: TopPostion, left: LeftPostion});
$('.LargeImage').show(1000);
})
}
$('#SmallImage').click(function(){
$('.LargeImage').attr('src','LargeImage.jpg');
LoadShowDiv();
})
这将使图像处于屏幕的中心
不需要使用所有这些JS来计算并显示屏幕中间的图像。 您可以使用CSS设置样式和位置,然后使用JS隐藏/显示。你的位置:固定;然后你就可以更容易地定义屏幕上的位置了 试着这样做:function LoadShowDiv () {
$('.BackgroudShade').slideDown(800); // shade of background will be visible
$(".DivOfImage").show(); // Div of Large Image will be visible
// When Image loaded successful then set width,height and top,left of Large Image Div
// but i want set top,left when screen is scroll down to bottom of page
// then show Div at middle of screen in every time
$('.LargeImage').load(function() {
$('.DivOfImage').width($('.LargeImage').width());
$('.DivOfImage').height($('.LargeImage').height());
var LeftPostion = (WidthOfScreen - $('.LargeImage').width()) / 2;
var TopPostion = (HeightOfScreen - $('.LargeImage').height()) / 2;
$(".DivOfImage").offset({ top: TopPostion, left: LeftPostion});
$('.LargeImage').show(1000);
})
}
$('#SmallImage').click(function(){
$('.LargeImage').attr('src','LargeImage.jpg');
LoadShowDiv();
})
如果您希望在水平和垂直方向将图像置于整个屏幕的中心,并完全忽略网页上可以使用的其他元素,则这将使图像保持在屏幕的中心
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
left:0;
right:0;
margin:0 auto
}
这会将元素放置在用户屏幕的中心。如果您希望将其水平和垂直放置在整个屏幕的中心,并完全忽略网页上的其他元素,则可以使用
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
left:0;
right:0;
margin:0 auto
}
这会将元素放置在用户屏幕的中心。如果您希望将其水平和垂直放置在整个屏幕的中心,并完全忽略网页上的其他元素,则可以使用
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
left:0;
right:0;
margin:0 auto
}
这会将元素放置在用户屏幕的中心。如果您希望将其水平和垂直放置在整个屏幕的中心,并完全忽略网页上的其他元素,则可以使用
.DivOfImage {
border: 8px solid #FFF;
color:#FFF;
background-color:#FFF;
border-radius:10px;
position:absolute;
left:0;
right:0;
margin:0 auto
}
这会将元素放置在用户屏幕的中心。谢谢,我尝试过它有助于减少代码,但这不是我的解决方案,当我单击底部图像,然后在屏幕左侧或顶部div show时,请记住为图像的一半宽度和高度添加一个负边距,它应该很好地位于屏幕的中心谢谢,我试着它有助于减少代码,但这不是我的解决方案,当我单击底部图像,然后在屏幕的左侧或顶部显示div时,请记住为图像的一半宽度和高度添加一个负边距,它应该很好地位于屏幕的中心谢谢,我试着它有助于减少代码,但这不是我的解决方案,当我单击底部图像,然后在屏幕的左侧或顶部显示div时,请记住为图像的一半宽度和高度添加一个负边距,它应该很好地位于屏幕的中心谢谢,我尝试过它有助于减少代码,但这不是我的解决方案,当我点击底部图像,然后在屏幕的左侧或顶部显示div时,请记住为图像的一半宽度和高度添加一个负边距,它应该很好地位于屏幕的中心