除了屏幕之外,CSS 值是否有任何方法响应窗口宽度@media
Are there any ways for CSS values respond to the window width other than @media screen?
我想知道是否有更好、更有效的方法来让 CSS 值响应窗口的宽度?例如,当窗口较大时,大图像位于右上角,但随着页面的缩小,大图像会变小,因为它开始向窗口左下角移动。另一种看待它的方式是:1000px宽屏幕=top:0;
因此,它将以一种方式进行设置,即屏幕尺寸每减小1px,top
就会增加1px的值。这有点像REM和排版。
/想法?如果可能的话,我也在寻找一个仅限 CSS 的解决方案。
您始终可以使用宽度的percent
值。例如,如果您希望它将大照片缩放到与浏览器底部的距离,则可以使用以下内容:
#photo{
bottom:60%;
width:50%;
}
这样,您将始终在窗口中具有相同的比率。当然,要做到这一点,您必须定义一个全宽的positiom:relative
容器。
你可以为此使用视口单位
小提琴(调整窗口大小(
div {
border: 2px solid tomato;
margin-top: 5vw;
}
<div>Test</div>
may be this can help:
document.getElementById("img").style.width = window.innerWidth*3/4;// 60% of window
console.log(window.innerWidth*3/4,window.innerWidth);
document.getElementById("img").style.bottom = window.innerWidth/2;// 50% of window
如果要
根据父元素的宽度缩放图像大小,请使用以下技巧:http://www.mademyday.de/css-height-equals-width-with-pure-css.html
这样,图像将按父元素的宽度比例缩放。
关于图像位置,很难理解您要实现的目标
右上角当窗口很大时,但当您缩小 页面,大图像随着底部开始移动而变小 左上角。
您无法根据父元素的宽度更改top
值,但是您可以使用相同的padding
技巧来定位图像。下面的快速示例。padding-bottom
值取决于父元素的宽度。
#outer
{
position: absolute;
bottom: 0;
right: 0;
padding-bottom: 50%;
border: 1px dashed red;
}
#inner
{
width: 30px;
height: 30px;
border: 1px dashed blue;
}
</style>
<div id="outer">
<div id="inner"></div>
</div>
相关文章:
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 在D3.js中,有没有任何方法可以将x和y方向上的滚动事件绑定到平移svg
- 有没有任何方法可以使用node-js从不同的机器打开浏览器
- PhantomJS - 检查javascript函数是否正在运行的任何方法
- 任何一种简单的方法都可以将带有onload的元素作为目标
- 有没有一种方法可以使用任何浏览器扩展整个dom树'的开发工具
- 在不重新加载的情况下更改标头URL的任何方法
- 使用jQuery.css()方法时,是否需要转义任何字符
- Javascript集:任何覆盖元素之间比较的方法
- 在离子2中,有任何方法可以将涡旋动量作为一个事件来检测
- 有没有任何方法可以将javascript对象从源代码传递到系统/浏览器剪贴板
- 任何编写文本文件并将其替换为上一个文本文件的方法
- 是否有任何内置方法可以更改JavaScript对象'的属性设置为某个值
- 在jquery中是否有任何方法或位置可以编写从Dom中删除页面后调用的方法
- 有没有任何情况下,一个方法不应该是原型方法
- 崇高的jslint:任何忽略特定代码段的方法
- 使用多功能框在 chrome 扩展程序中包含内联自动填充功能的任何方法
- 识别值是否与 jqGrid 数据中的任何键匹配的正确方法是什么?
- 在 1 个方法中增加变量值会触发另一个方法的 for 循环,欢迎任何建议