美文网首页
纯css实现页面元素宽高等比例缩放

纯css实现页面元素宽高等比例缩放

作者: 考考拉拉 | 来源:发表于2017-05-24 18:54 被阅读0次

    用js实现一个宽度自适应,高度随着宽度变化而变化的矩形,相信大家肯定都会。无非是js获取一下元素宽度,然后再计算出相应比例的高度,然后赋给元素,但是纯css的实现更方便些,项目中需要某div宽度百分比,随宽度的变化自适应高度等于宽度,发现使用height:calc(width),不起作用,所以想到纯css实现的办法;


html代码/css代码如下图:

      我们来分析下是如何实现的,其中div容器包含两个元素dummy和content,dummy是个空div,而content是我们正真要实现宽高等比例缩放的元素,div是块元素,宽度会随其内容而撑开,所以只要让高度随宽度变化就行,不使用js的前提下,就是依赖dummy元素的属性margin-top:100%来实现,margin-top的百分比是以父元素div的宽度为基准,设置其为100%,则留出的高度就和div的宽度一样,再设置content的定位到div上覆盖div即可实现其高度随宽度的百分比而变化;


      此时content就是一个高度随着宽度变化的正方形,当然设置margin-top为75%,就是一个宽高比为4:3的长方形,但是使用时要注意,content定位absolute定位之后,会脱离默认文档流,注意解决高度塌陷的问题。

元素,

相关文章

  • 纯css实现页面元素宽高等比例缩放

    用js实现一个宽度自适应,高度随着宽度变化而变化的矩形,相信大家肯定都会。无非是js获取一下元素宽度,然后再计...

  • canvas/onmousedown/onmouseover/o

    canvas 宽高等比缩放,不要用css控制初始宽高 onmouseenter|onmouseleave与onmo...

  • js实现放大镜

    效果图 实现原理 借助宽高等比例放大的两张图片,结合js中鼠标偏移量、元素偏移量、元素自身宽高等属性完成;左侧遮罩...

  • 前端笔记(一)--》Zoom 属性及解决火狐不支持方法

    最近遇到 需要根据 缩放比例 来 缩放页面内的元素,页面内元素的 相对位置不变。 于是用到了 zoom 属性。 z...

  • 所有的布局功能总结

    1、图片等比例自动缩放 2、子元素宽高确定或者不确定,水平垂直居中 3、移动端页面适配———多方案解析https:...

  • js实现浏览器滚动缩放功能

    要想实现通过鼠标滚轮滚动,缩放页面中的指定元素,主要是通过css3中的 transform: scale() 来实...

  • 移动端适配

    移动端适配 1.适配宽高等问题REM方案:改变页面根部的font-size js方案:通过缩放viewport,达...

  • Excel的缩放比例

    Excel中,鼠标滚动缩放的比例与工具栏上页面布局→缩放比例中的数字是不一样的。页面布局中的缩放比例是实际字号的放...

  • 金三银四前端面试汇总

    CSS div不定宽高,如何实现宽高比例1:1 div不定宽高,实现垂直居中 div不知道宽高且display:n...

  • css中如何做到容器按比例缩放

    这次主要讨论应用padding属性实现容器的高度根据容器的宽度按比例缩放。 padding: css paddin...

网友评论

      本文标题:纯css实现页面元素宽高等比例缩放

      本文链接:https://www.haomeiwen.com/subject/rlmoxxtx.html