Javascript窗口定位
我有一个javascript社交锁,它在窗口中工作,我在不同的屏幕上测试它时遇到了问题,比如手机等,因为窗口会改变位置。到目前为止,我知道这部分代码会影响定位,但我不知道如何影响定位 这是CSS:Javascript窗口定位,javascript,html,css,position,window,Javascript,Html,Css,Position,Window,我有一个javascript社交锁,它在窗口中工作,我在不同的屏幕上测试它时遇到了问题,比如手机等,因为窗口会改变位置。到目前为止,我知道这部分代码会影响定位,但我不知道如何影响定位 这是CSS: #gatewaydiv { max-width: 15em; height: 6em; padding: 9em; position: absolute; display:none; background-color:#0e0f0f;
#gatewaydiv
{
max-width: 15em;
height: 6em;
padding: 9em;
position: absolute;
display:none;
background-color:#0e0f0f;
text-align:center;
font-family:arial;
font-weight:bold;
opacity:0.9;
margin: auto;
margin-top: -10%;
}
这是Javascript窗口:
function setupgateway()
{
var Left = $(window).width() /2.6;
Left = Left - $('#gatewaydiv').width() / 2;
var Top = $(window).height()/2;
Top = Top - $('#gatewaydiv').height()/6;
$('#gatewaydiv').css('top', Top+'px').css('left', Left+'px').css('display', 'inline');
如果有人能解释一下这个javascript窗口代码是如何工作的,我如何才能让它在所有设备上正常工作
我读过很多类似的问题,但没有找到答案,因为代码完全不同,这也不是一个弹出窗口,老实说,我不是javascript专家。
谢谢大家! 您可以使用下面的CSS使任何元素垂直和水平居中。例如—
#gatewaydiv{
position:absolute;
margin: auto;
left: 0;
right: 0;
top: 50%;
-moz-transform: translatey(-50%);
-ms-transform: translatey(-50%);
-o-transform: translatey(-50%);
-webkit-transform: translatey(-50%);
transform: translatey(-50%);
}
请记住,您必须删除页边顶部:-10%,并禁用/删除Javascript
此外,替换该行-
$('#gatewaydiv').css('top', Top+'px').css('left', Left+'px').css('display', 'inline');
按这条线-
$('#gatewaydiv').css('display', 'inline');
也许你可以加上:
window.addEventListener('resize', setupgateway);
window.addEventListener('scroll', setupgateway);
您是否尝试使用CSS将gatewaydiv垂直和水平居中?@Xahed Kamal是的,我有:@media max width:768px{gatewaydiv{margin:auto;}但是它几乎没有任何区别。好的。大多数时候我使用CSS来垂直和水平居中一个div。给你这个答案。谢谢!这确实有帮助,但不是100%居中。我如何禁用Javascript的特定部分而不影响整体?只需禁用这一行-$'gatewaydiv'。CSS'top,Top+'px'.css'left',left+'px'.css'display',inline';…..使用//双斜杠将代码转换为注释。如果禁用这一行,您将拥有绝对居中的div很棒!非常感谢!