首页
学习
活动
专区
圈层
工具
发布

使用css设置div等比例缩放高宽

在响应式开发中,有一些元素需要按等比例进行显示,比如说一个上传图片的区域,我们需要严格限制上传区域的比例为3:1,上传完成后的预览图宽高均为100%,才能保证用户上传后看到上传的图片是否合乎比例,是否在实际应用时会产生变形或裁剪的问题...那么此时就需要在适应不同宽度的屏幕中进行等比例缩放div区域。...方案一:通过媒体查询,设定在不同屏幕宽度下div的高度和宽度,如下示例 @media only screen and (min-width: 100px) and (max-width: 640px)...div{ width:calc(100% - 100px); height:0; padding-bottom:calc((100% - 100px)/3; } 如此得到的div...这个方法依赖于一个基础却又容易混淆的css知识点:当margin/padding取形式为百分比的值时,无论是left/right,还是top/bottom,都是以父元素的width为参照物的,下面是W3C

5.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    仅使用一个 DIV 配合 CSS 实现饼状图

    本文为译文「意译」 完整的代码请滑到文末。 我们只使用一个div,仅采用css实现饼状图。...【如上图】 HTMl 结构 div class="pie" style="--p:60;--b:10px;--c:purple;">60%div> 我们添加了几个 css 的变量: --p:进度条的百分比...--b:边框厚度的值 --c:边框的主体颜色 本文使用的是简写的变量,在生产环境中,为了达到可读性,我们应该使用--p -> --percentage, --b -> --border-thickness...aspect-ratio: 1; 保证 div 是正方形,当然你也可以使用 height: var(--w) 达到效果。...知识点2: 的旋转度数计算 -- angle = percentage * 360deg / 100 先将元素旋转了相应的度数,之后对其位置进行移动,这里涉及到了对 Y 轴居中。

    1.8K20

    五. css 布局之 position(定位)

    1.定位的简介 定位(position) 定位是一种更加高级的布局手段 通过定位可以将元素摆放到页面的任意位置 使用position属性来设置定位 可选值: static 默认值,元素是静止的没有开启定位...定位元素垂直方向的位置由top和bottom两个属性来控制 通常情况下我们只会使用其中一 top值越大,定位元素越向下移动 bottom值越大,定位元素越向上移动 left:定位元素和定位位置的左侧距离...right:定位元素和定位位置的右侧距离 定位元素水平方向的位置由left和right两个属性控制 通常情况下只会使用一个 left越大元素越靠右 right越大元素越靠左 的位置由left和right两个属性控制 通常情况下只会使用一个...> 4.粘滞定位 ​ 当元素的position属性设置为sticky时则开启了元素的粘滞定位 粘滞定位和相对定位的特点基本一致, 不同的是粘滞定位可以在元素到达某个位置时将其固定 <!

    3K41

    DIV+CSS布局和TABLE布局的优缺点

    HTML5学堂:TABLE布局是早以前CSS不存在的时候兴起的,是对TABLE标签的不正规使用,Table标签就是表格,是用来显示数据的,而不是用来布局网页的,虽然它有时候布局网页很简单。...现在绝大多数的网站都是用DIV+CSS布局。这两种布局各有各的优点。 一.div+css布局的好处: 1.符合W3C标准,代码结构清晰明了,结构、样式和行为分离,带来足够好的可维护性。...3.加快了页面的加载速度(最重要的)(在IE中要将整个table加载完了才显示内容)。 4.节约站点所占的空间和站点的流量。...5.用只包含结构化内容的HTML代替嵌套的标签,提高另外搜索引擎对网页的搜索效率。 二.table布局的好处(table布局也不是一点用的没有,这点是毋庸置疑的) 1.容易上手。...2.可以形成复杂的变化,简单快速。 3.表现上更加“严谨”,在不同浏览器中都能得到很好的兼容。

    2.8K90

    CSS教程:div垂直居中的N种方法「建议收藏」

    div>、这样的元素是没有valign特性的,因此使用vertical-align对它们不起 作用。     ...div> 二、多行未知高度文字的垂直居中     如果一段内容,它的高度是可变的那么我们就可以使用上一节讲到的实现水平居中时使用到的最后一种方法,就是设定Padding...valign特性的(X)HTML标签起作用,但是在CSS中还有一个display 属性能够模拟,所以我们可以使用这个属性来让div>模拟就可以使用vertical-align...100%才能使content回到原来的位置上去 ,但是如果我们把content也设置50%呢?...对于如果使用CSS Hack来区分浏览器,你可 以参考这篇“简单CSS hack:区分IE6、IE7、IE8、Firefox、Opera”:  div#wrap {       display:table

    4.8K30

    【CSS】定位 ⑥ ( 使用绝对定位在父容器任意位置显示子容器 | 代码示例 )

    一、需求分析及核心开发要点 ---- 要实现如下功能 , 下图 粉色 部分是 整体 父容器 , 紫色元素 是 中心的核心位置 , 蓝色是左上角的浮标 , 红色是右下角的浮标 ; 首先分析父容器元素...; 由于 子元素 需要使用 绝对定位 , 此处的 父容器 必须设置 相对定位 ; 上图中 , 父容器存在 1 像素的边框 , 父容器 中设置一个内边距 ; 设置子元素浮动后 , 浮动的元素 可以覆盖到..., 需要覆盖 内边距范围 , 此处不能使用浮动 , 浮动可以在标准流上方浮动显示 , 但是不能覆盖到 内边距范围 ; 也不能使用 相对定位 , 相对定位会保留元素原始位置 , 其它标准流元素无法使用该位置...; 因此此处只能使用绝对定位 , 在设置了相对定位的父元素容器中 , 可以使用绝对定位在父容器的任意位置显示任何元素 ; /* 绝对定位元素 - 左上角 */ .top { /* 子元素设置绝对定位...class="box"> div class="top">div> div class="center">div> div class="bottom">div> </

    2.5K10
    领券