<!DOCTYPE html> <html><head>讯享网<meta charset=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">utf-8</span><span style="color: rgba(128, 0, 0, 1)">"</span>> <meta name=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">viewport</span><span style="color: rgba(128, 0, 0, 1)">"</span> content=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">width=device-width, initial-scale=1</span><span style="color: rgba(128, 0, 0, 1)">"</span>> <title>数据大屏scale</title></head> <style type=“text/css”>
讯享网<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 去除默认样式 </span><span style="color: rgba(0, 128, 0, 1)">*/</span> *<span style="color: rgba(0, 0, 0, 1)"> { margin: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">; padding: </span><span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">; } .container { width: 100wh; height: 100vh; background: orange; background: url(</span>/Users/hoge/Desktop/code/vueStudy/硅谷甄选/admin_template/project/src/views/screen/images/bg.png) no-<span style="color: rgba(0, 0, 0, 1)">repeat; background</span>-<span style="color: rgba(0, 0, 0, 1)">size: cover; } .box { width: 1920px; height: 1080px; background: red; transform</span>-<span style="color: rgba(0, 0, 0, 1)">origin: left top; position: </span><span style="color: rgba(0, 0, 255, 1)">fixed</span><span style="color: rgba(0, 0, 0, 1)">; left: </span><span style="color: rgba(128, 0, 128, 1)">50</span>%<span style="color: rgba(0, 0, 0, 1)">; top: </span><span style="color: rgba(128, 0, 128, 1)">50</span>%<span style="color: rgba(0, 0, 0, 1)">; } .top { width: 100px; height: 100px; background: hotpink; margin</span>-<span style="color: rgba(0, 0, 0, 1)">left: 50px; } .bottom { width: 100px; height: 100px; background: skyblue; margin</span>-<span style="color: rgba(0, 0, 0, 1)">left: 50px; margin</span>-<span style="color: rgba(0, 0, 0, 1)">top: 100px; } </span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)"> 放大缩小的倍数从设备的中心点开始进行放大 </span><span style="color: rgba(0, 128, 0, 1)">*/</span></style><body>讯享网<!-- div box 为整个数据大屏的根节点,100vh 100wh的高度 --> <div <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">container</span><span style="color: rgba(128, 0, 0, 1)">"</span>> <!-- 数据展示的区域 --> <div <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">box</span><span style="color: rgba(128, 0, 0, 1)">"</span>> <div <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">top</span><span style="color: rgba(128, 0, 0, 1)">"</span>>我是祖国的</div> <div <span style="color: rgba(0, 0, 255, 1)">class</span>=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">bottom</span><span style="color: rgba(128, 0, 0, 1)">"</span>>老花骨朵</div> </div> </div></body></html> <script><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 监控数据大屏的放大与缩小</span> let box = document.querySelector(<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">.box</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">); box.style.transform </span>= `scale(${getScale()}) translate(-<span style="color: rgba(128, 0, 128, 1)">50</span>%<span style="color: rgba(0, 0, 0, 1)">)`; </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 计算缩放的比例</span> function getScale(w = <span style="color: rgba(128, 0, 128, 1)">1920</span>, h = <span style="color: rgba(128, 0, 128, 1)">1080</span><span style="color: rgba(0, 0, 0, 1)">) { </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 屏幕的宽|高/设计稿的宽|高</span> <span style="color: rgba(0, 0, 255, 1)">const</span> ww = window.innerWidth /<span style="color: rgba(0, 0, 0, 1)"> w; </span><span style="color: rgba(0, 0, 255, 1)">const</span> wh = window.innerHeight /<span style="color: rgba(0, 0, 0, 1)"> h; </span><span style="color: rgba(0, 0, 255, 1)">return</span> ww < wh ?<span style="color: rgba(0, 0, 0, 1)"> ww : wh; } window.onresize </span>= () =><span style="color: rgba(0, 0, 0, 1)"> { box.style.transform </span>= `scale(${getScale()}) translate(-<span style="color: rgba(128, 0, 128, 1)">50</span>%<span style="color: rgba(0, 0, 0, 1)">)` }</script>
讯享网


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/140398.html