浅谈css3新单位vw、vh、vmin、vmax的使用详解

yizhihongxing

浅谈CSS3新单位vw、vh、vmin、vmax的使用详解

CSS3新增了四个相对于窗口尺寸的单位:vw、vh、vmin、vmax。这些单位可以帮助我们更好地控制和布局我们的网页元素。下面就详细介绍一下每种单位的用法和示例。

vw

vw表示相对于视口宽度的百分比,1vw等于视口宽度的1%。使用vw可以让元素的尺寸随着视口的变化而变化。例如,想将一个元素的宽度设定为视口宽度的50%,可以这样写:

.element {
  width: 50vw;
}

vh

vh表示相对于视口高度的百分比,1vh等于视口高度的1%。使用vh可以让元素的尺寸随着视口的变化而变化。例如,想将一个元素的高度设定为视口高度的50%,可以这样写:

.element {
  height: 50vh;
}

vmin

vmin表示相对于视口宽度和高度中较小的那个值的百分比。1vmin等于较小值的1%。使用vmin可以让元素的尺寸随着视口的变化而变化,但不会超过视口中较小的尺寸。例如,想将一个元素的宽度和高度都设定为视口尺寸中较小值的50%,可以这样写:

.element {
  width: 50vmin;
  height: 50vmin;
}

vmax

vmax表示相对于视口宽度和高度中较大的那个值的百分比。1vmax等于较大值的1%。使用vmax可以让元素的尺寸随着视口的变化而变化,但不会超过视口中较大的尺寸。例如,想将一个元素的宽度和高度都设定为视口尺寸中较大值的50%,可以这样写:

.element {
  width: 50vmax;
  height: 50vmax;
}

通过这四种单位的组合使用,可以实现更加灵活和动态的布局效果。例如,如下代码将在不同设备上显示不同的效果:

.element {
  width: 90vmin;
  height: 90vmin;
  max-width: 800px;
  max-height: 800px;
  margin: auto;
  background-color: #eee;
}

这个元素的宽度和高度都是视口宽度和高度中较小的那个值的90%,但是不会超过800px。当设备的宽度和高度都大于等于888px时,元素的大小将停留在800px,而在更小的视口尺寸下,元素的大小会相应地缩小。同时,设置了margin: auto,可以实现元素居中显示效果。

另外一个示例是,通过vw和vh使得一个图片在不同屏幕宽高比例下都能适应视口,同时设置图片宽高比例,代码如下:

.img {
  width: 100vw;
  height: 100vh;
  background: url(img.jpg) no-repeat center center;
  background-size: cover;
}

img {
  /* 设置宽高比例 */
  width: 40%;
  height: 60%;
}

这个代码中,图片容器的宽高都是100vw和100vh,表示占满整个视口,同时设置了背景图为img.jpg,并通过background-size: cover属性保证图片适应容器。在图片元素img中设置了宽高比例为40%和60%,将图片按照比例缩放到所在的容器中。

通过上述两个示例的介绍,我们可以看到,使用vw、vh、vmin和vmax这四个单位可以让我们更加灵活地控制元素的尺寸和布局效果,适应不同尺寸的设备和视口。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈css3新单位vw、vh、vmin、vmax的使用详解 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 利用纯CSS实现动态的文字效果实例

    这里是“利用纯CSS实现动态的文字效果实例”的完整攻略。 1.选择合适的字体 在实现动态文字效果之前,我们需要选择一种合适的字体来突出文字的视觉效果。一些常用的字体如下: Helvetica Arial Times New Roman Georgia 如果您需要使用其他特殊的字体,可以通过引入字体文件或使用CSS3的@font-face来实现。在选择字体的时…

    css 2023年6月10日
    00
  • JS仿QQ好友列表展开、收缩功能(第一篇)

    下面我将详细讲解 “JS仿QQ好友列表展开、收缩功能(第一篇)” 的完整攻略。 简介 本篇文章主要是介绍如何使用 JavaScript 编写一个仿 QQ 好友列表的展开、收缩功能,实现点击好友分组,可以收缩或展开该分组中的好友。 HTML结构 我们先来看一下需要实现的 HTML 结构: <div class="friend-list&quot…

    css 2023年6月10日
    00
  • 圆角矩形的html+css实现代码

    实现圆角矩形的HTML+CSS代码需要用到CSS的border-radius属性。border-radius属性可以设置一个或多个边角的半径,实现圆角效果。具体操作如下: 步骤1:创建一个HTML代码结构,用div标签作为容器,即 ,用border属性设置边框样式。 <div class="box"></div> …

    css 2023年6月10日
    00
  • css float属性 图解float属性的点点滴滴

    CSS Float属性 CSS Float属性用于设置指定元素的浮动方向,常用于布局排版中的位置控制。 基本语法 float: left | right | none | inherit; 取值解析 left: 元素向左浮动 right: 元素向右浮动 none: 元素不浮动 inherit: 继承父元素的浮动属性 需要注意的是使用Float属性进行布局时,…

    css 2023年6月10日
    00
  • 基于CSS3和jQuery实现跟随鼠标方位的Hover特效

    实现跟随鼠标方向的Hover特效需要结合CSS3和jQuery来实现。 首先,在HTML文件中创建一个hover区域div,用于显示跟随鼠标方向的效果。代码如下: <div class="hover-area"></div> 然后,在CSS中设置 hover-area 的样式,如下所示: .hover-area {…

    css 2023年6月10日
    00
  • WEB标准学习,认识两种网页声明的含义

    一、WEB标准学习 WEB标准是基于W3C组织推出的一系列标准化的技术规范,包括HTML、CSS、XML、JavaScript等各种技术标准,旨在为开发者提供规范的技术规范,提高网站的可访问性、可用性、可维护性和可扩展性。 二、认识两种网页声明的含义 HTML 4.01 doctype 声明 HTML 4.01 doctype 声明是指在 HTML 4.01…

    css 2023年6月11日
    00
  • CSS属性探秘系列(五):min-width

    下面是关于 CSS 属性 min-width 的完整攻略: 一、什么是 min-width min-width 是 CSS 中用来设置最小宽度的一个属性。它的作用是当元素的宽度小于指定的最小宽度时,自动扩展到指定的最小宽度。同时,若元素的宽度大于最小宽度,则不会对其做任何改变。 二、min-width 的语法 min-width 的语法很简单,只需要设置具体…

    css 2023年6月10日
    00
  • 在 React 中使用 Redux 解决的问题小结

    在React中使用Redux可以解决以下问题: 多个组件需要共享的状态管理 需要管理复杂的组件状态 状态需要可以被时间旅行(Time Travel)调试 以下是使用Redux的完整攻略: 安装 Redux 首先需要在项目中安装Redux,可以使用npm或者yarn。示例命令如下: npm install redux yarn add redux 创建 Red…

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部