vue 实现 rem 布局或vw 布局的方法

一、使用 rem 实现响应式布局

  1. 设置 rem 基准值

首先要设置 HTML 根元素的 font-size 值为屏幕宽度的百分之一。这样,当设备宽度发生变化时,根元素的 font-size 值也会跟着变化,从而实现响应式的布局。

html {
  font-size: calc(100vw / 7.5); /* 以 iPhone6/7/8 为标准,1rem = 100px */
}
  1. 使用 rem 进行布局

在进行页面布局时,使用 rem 作为单位代替 px,即可实现基于 rem 的响应式布局,示例代码如下:

<div class="container">
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
</div>
.container {
  width: 100%;
  display: flex;
  justify-content: space-around;
}

.box {
  width: 2rem;
  height: 2rem;
  background-color: red;
}

以上代码中,使用 flex 布局使容器元素内的子元素均分父容器宽度;同时,子元素的宽高都设置为 2rem,由于我们已经设置了 HTML 根元素的 font-size 值,所以这里的实际宽度是根据屏幕宽度来计算的。

  1. 针对不同屏幕宽度设置不同的 rem 值

如果想要在不同屏幕宽度下设置不同的 rem 值,可以使用媒体查询来实现,示例代码如下:

@media screen and (max-width: 767px) {
  html {
    font-size: calc(100vw / 10); /* 以 10 作为基准值 */
  }
}

@media screen and (min-width: 768px) {
  html {
    font-size: calc(100vw / 7.5); /* 以 7.5 作为基准值 */
  }
}

二、使用 vw 实现响应式布局

  1. 设置 vw 基准值

和 rem 布局类似,首先我们需要设置 HTML 根元素的 font-size 值为屏幕宽度的百分之一。但是这里不是使用 rem 作为单位,而是使用 vw 和 vh。

html {
  font-size: 1vw;
}
  1. 使用 vw 进行布局

在进行页面布局时,使用 vw 作为单位代替 px,即可实现基于 vw 的响应式布局,示例代码如下:

<div class="container">
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
</div>
.container {
  width: 100vw;
  display: flex;
  justify-content: space-around;
}

.box {
  width: 20vw;
  height: 20vw;
  background-color: red;
}

以上代码中,使用 flex 布局使容器元素内的子元素均分父容器宽度;同时,子元素的宽高都设置为 20vw,这样就可以根据屏幕宽度自适应地计算实际宽度了。

  1. 针对不同屏幕宽度设置不同的 vw 值

如果想要在不同屏幕宽度下设置不同的 vw 值,同样也可以使用媒体查询来实现,示例代码如下:

@media screen and (max-width: 767px) {
  html {
    font-size: 5vw; /* 以 5 作为基准值 */
  }
}

@media screen and (min-width: 768px) {
  html {
    font-size: 7.5vw; /* 以 7.5 作为基准值 */
  }
}

以上就是使用 rem 或 vw 实现响应式布局的攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue 实现 rem 布局或vw 布局的方法 - Python技术站

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

相关文章

  • 第一篇初识bootstrap

    初识Bootstrap Bootstrap是Twitter公司开发的一个前端开发框架,具有响应式设计和易于使用的特点。本文介绍Bootstrap的初步使用。 安装 Bootstrap的最新版本可以从官方网站得到(https://getbootstrap.com/)。在下载页面中,可以选择下载完整的源代码或者只下载预编译的文件来使用。 如果你想在HTML页面中…

    css 2023年6月11日
    00
  • JS原生手写轮播图效果

    下面是针对JS原生手写轮播图效果的完整攻略: 一、需求分析 首先要清楚地明确轮播图的需求,包括: 显示多张图片并自动轮播; 支持点击左侧和右侧按钮来切换图片; 支持点击数字按钮来跳转到相应的图片; 支持鼠标悬停在图片上时停止轮播,离开时继续轮播。 二、实现步骤 然后根据需求来逐步实现轮播图效果,具体步骤如下: 编写HTML结构; 设置相应的样式; 使用JS实…

    css 2023年6月10日
    00
  • 用html+css+js实现的一个简单的图片切换特效

    实现一个简单的图片切换特效,可以使用 HTML、CSS 和 JavaScript。 整个过程可以分为以下几个步骤: 构建 HTML 结构 样式布局 实现图片切换效果 具体实现流程: 构建 HTML 结构 <div class="slider"> <img src="img1.jpg" alt=&quo…

    css 2023年6月9日
    00
  • Bootstrap实现渐变顶部固定自适应导航栏

    这里是关于”Bootstrap实现渐变顶部固定自适应导航栏”的完整攻略: 步骤一:基本结构 首先,我们需要设置基本的html文档结构,并引入Bootstrap的css文件和js文件,以及jQuery库和Popper.js。 <!doctype html> <html lang="en"> <head> …

    css 2023年6月11日
    00
  • 玩转jQuery按钮 请告诉我你最喜欢哪些?

    玩转jQuery按钮 当我们开发网站或者应用的时候,按钮是经常使用的UI元素,有时候一个好看而又有趣的按钮能够让用户印象深刻。而使用jQuery可以让我们在按钮方面更加灵活地运用。 常见的jQuery按钮 在jQuery中,有一些常见的按钮样式和功能,包括按钮的hover、active效果、按钮的禁用、表单提交等。 悬停按钮 悬停按钮是一种常见的UI元素,可…

    css 2023年6月10日
    00
  • vue.js实现标签页切换效果

    下面我将为大家介绍一下如何用 Vue.js 实现标签页切换效果的完整攻略。 1. 创建标签页组件 首先,我们需要创建一个标签页组件。具体实现可以使用 Vue.js 的单文件组件形式进行开发。标签页组件需要包含一个选项卡和对应的内容。 <template> <div> <ul> <li v-for="(tab…

    css 2023年6月10日
    00
  • stricky footer的三种解决方案详解

    “sticky footer”的目标就是让footer永远处于页面底部,无论页面的内容高度是多少。下面介绍三种实现“sticky footer”的方法。 方法一:使用flex布局 flex布局可以很容易地实现sticky footer。步骤如下: 在html里添加如下代码: <body> <div class="wrapper&q…

    css 2023年6月10日
    00
  • JavaWeb表单注册界面的实现方法

    让我来详细讲解一下“JavaWeb表单注册界面的实现方法”的完整攻略。 1. 概述 JavaWeb表单注册界面的实现方法主要包括以下几步: 设计前端页面,包括表单和提交按钮; 创建Java Servlet处理表单数据,将数据存储到数据库中; 创建数据库并设计用户表,用于存储注册用户的信息; 使用JDBC连接数据库,并编写Java代码实现数据的增删改查。 接下…

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