Jquery 在任何浏览器维度中间都有一个垂直和水平可缩放的div
我试图在任意大小的页面中央放置一个圆角div,并在调整浏览器大小时使其在垂直和水平方向上都具有响应性Jquery 在任何浏览器维度中间都有一个垂直和水平可缩放的div,jquery,html,css,Jquery,Html,Css,我试图在任意大小的页面中央放置一个圆角div,并在调整浏览器大小时使其在垂直和水平方向上都具有响应性 到目前为止,我已经成功地将DIV放在页面中间,但是它只是水平响应。我需要使它也垂直响应,如果可能的话 你能提出一些建议吗 这是代码和小提琴 尝试将此应用于您的.login框: width: 60vw; height: 60vw; 这将保持登录框div的高度和宽度相对于查看端口的宽度。尝试将此应用于您的登录框: width: 60vw; height: 60vw;
到目前为止,我已经成功地将DIV放在页面中间,但是它只是水平响应。我需要使它也垂直响应,如果可能的话
你能提出一些建议吗 这是代码和小提琴尝试将此应用于您的.login框:
width: 60vw;
height: 60vw;
这将保持登录框div的高度和宽度相对于查看端口的宽度。尝试将此应用于您的登录框:
width: 60vw;
height: 60vw;
这将保持登录框div的高度和宽度相对于查看端口的宽度。您可以使用flex box将项目水平和垂直居中。 您还必须将身体高度设置为100%: index.html
<body>
<div id="login">
…
</div>
</body>
可以使用flex box将项目水平和垂直居中。 您还必须将身体高度设置为100%: index.html
<body>
<div id="login">
…
</div>
</body>
正文,html{
身高:100%;
宽度:100%;
}
.集装箱{
宽度:100%;
身高:100%;
位置:相对位置;
背景:蓝色;
}
.圆形分区{
位置:绝对位置;
最高:50%;
左:50%;
宽度:200px;
高度:200px;
边界半径:50%;
背景:红色;
转化:translateX-50%translateY-50%;
}
正文,html{
身高:100%;
宽度:100%;
}
.集装箱{
宽度:100%;
身高:100%;
位置:相对位置;
背景:蓝色;
}
.圆形分区{
位置:绝对位置;
最高:50%;
左:50%;
宽度:200px;
高度:200px;
边界半径:50%;
背景:红色;
转化:translateX-50%translateY-50%;
}
您可以使用IE8中理解的表格显示属性:
或下面的代码片段进行测试
html{
身高:100%;
宽度:100%;
显示:表格;
}
身体{
显示:表格单元格;
垂直对齐:中间对齐;
文本对齐:居中;
}
登录{
背景:红色;
显示:内联表;
宽度:50%;
最大宽度:90vh;/*删除此项并查看调整大小窗口的高度*/
空白:nowrap;/*将伪登录框和登录框并排放置*/
}
登录:之前{
内容:;
显示:内联块;
宽度:0;
填充顶部:100%;/*将以父对象的宽度为参照绘制正方形*/
垂直对齐:中间;/*沿登录框*/
}
.登录框{
背景:绿色;
边界半径:50%;
填充:0.5em 1px;
显示:内联块;
垂直对齐:中间;/*沿伪:之前*/
空白:正常;
}
.login-box\uuu头{
字号:20px
}
.login-box\u表单-usr-details{
填充:0 1em;/*远离侧面*/
字体大小:25px;
}
输入,span[类]{
显示:块;
保证金:自动;
}
标签{
空白:nowrap;/*通常,看起来更好*/
}
登录
输入您的电子邮件
输入您的密码
忘记密码了?
登录
您可以使用IE8中理解的表格显示属性:
或下面的代码片段进行测试
html{
身高:100%;
宽度:100%;
显示:表格;
}
身体{
显示:表格单元格;
垂直对齐:中间对齐;
文本对齐:居中;
}
登录{
背景:红色;
显示:内联表;
宽度:50%;
最大宽度:90vh;/*删除此项并查看调整大小窗口的高度*/
空白:nowrap;/*将伪登录框和登录框并排放置*/
}
登录:之前{
内容:;
显示:内联块;
宽度:0;
填充顶部:100%;/*将以父对象的宽度为参照绘制正方形*/
垂直对齐:中间;/*沿登录框*/
}
.登录框{
背景:绿色;
边界半径:50%;
填充:0.5em 1px;
显示:内联块;
垂直对齐:中间;/*沿伪:之前*/
空白:正常;
}
.login-box\uuu头{
字号:20px
}
.login-box\u表单-usr-details{
填充:0 1em;/*远离侧面*/
字体大小:25px;
}
输入,span[类]{
显示:块;
保证金:自动;
}
标签{
空白:nowrap;/*通常,看起来更好*/
}
登录
输入您的电子邮件
输入您的密码
忘记密码了?
登录
您可以添加此类并为login Div元素指定特定高度。绝对中心{margin:auto;position:absolute;top:0;left:0;bottom:0;right:0;}我不确定我在跟踪你。你的意思是将.absolute center类添加为login div的子类吗?看看这个,谢谢你的示例,但这不是我想要的。我已经将div居中,我的问题是如何在调整浏览器大小时使其在垂直和水平方向上都完全响应。这有意义吗?如果loginbox具有比使用top:50%的特定高度和边距top:-height\u of\u loginbox或使用css3转换动画。您可以添加此类并为login Div元素指定特定高度。绝对中心{margin:auto;position:absolute;top:0;left:0;bottom:0;right:0;}我不确定我在跟踪你。你是说t
o add.absolute center类作为login div的子类?看看这个,谢谢你的示例,但这不是我想要的。我已经将div居中,我的问题是如何在调整浏览器大小时使其在垂直和水平方向上都完全响应。这有意义吗?如果loginbox的特定高度大于使用top:50%和margin top:-height\u of\u\u loginbox或使用css3转换动画。解释您的解决方案,不鼓励只使用代码的答案。解释您的解决方案,不鼓励只使用代码的答案。不幸的是,它必须与IE9兼容。所以我已经排除了Flex:/无论如何,谢谢!您可以使用polyfill:我更喜欢使用最新的web技术,在现代浏览器中使用solic实现,在旧浏览器中使用polyfill/shim。如果您不喜欢这种方法,您可以使用table属性来解决您的问题,这非常有用。不幸的是,它必须与IE9兼容。所以我已经排除了Flex:/无论如何,谢谢!您可以使用polyfill:我更喜欢使用最新的web技术,在现代浏览器中使用solic实现,在旧浏览器中使用polyfill/shim。如果您不喜欢这种方法,您可以使用table属性来解决您的问题,非常有用。谢谢您的示例…它没有响应性,不是吗?试图调整浏览器的大小,但什么都没有。@Beppe你是什么意思?所以几乎任何屏幕上都不会出现什么内容你好!我的意思是,它没有反应……它实际上停留在中间,但是当调整大小时它不会变大……它是有意义的吗?文本和输入?字体大小?还是仅仅是容器?@Beppe类似的东西!?谢谢你的例子…它没有反应,不是吗?试图调整浏览器的大小,但什么都没有。@Beppe你是什么意思?所以几乎任何屏幕上都不会出现什么内容你好!我的意思是,它没有反应……它实际上停留在中间,但是当调整大小时它不会变大……它是有意义的吗?文本和输入?字体大小?还是仅仅是容器?@Beppe类似的东西!?