iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue如何使用媒体查询实现响应式
  • 279
分享到

vue如何使用媒体查询实现响应式

2024-04-02 19:04:59 279人浏览 泡泡鱼
摘要

目录使用媒体查询实现响应式的两种方式前提1.在每个组件中为其使用媒体查询2.写n套页面,在使用这些页面的组件中进行一次媒体查询Vue中的媒体查询语法使用媒体查询实现响应式的两种方式

使用媒体查询实现响应式的两种方式

前提

依赖:

sass,sass-loader

1.在每个组件中为其使用媒体查询

这种方法的有点是减少了重写不同终端同一组件的工作量,缺点是每个组件都要使用媒体查询,当一套页面组件不同时,需要进行组件的显示与隐藏(display:none!important),在不同终端区别不大的情况下建议使用这种方法.

例如:

.styleClassName{
width:200px;
@media only screen and (min-width: 1200px) {
width:100px
}
}

2.写n套页面,在使用这些页面的组件中进行一次媒体查询

这种方法的优点是媒体查询比较方便,缺点是在多终端相似度较高的情况下,要写几套重复页面.

因此,此方式适宜在多终端之间差异较大的情况下使用.

示例:

<template>
    <div>
        <div class="pc">
            <!-- pc端页面-->
        </div>
        <div class="pad">
            <!-- pad端页面-->
        </div>
        <div class="mobile">
            <!-- 移动端页面-->
        </div>
    </div>
</template>
<style lang="sCSS" scoped>
//pc端
@media only screen and (min-width: 1200px) {
  .pc {
    display: block !important;
  }
  .pad {
    display: none !important;
    touch-action: auto !important;
  }
  .mobile {
    display: none !important;
    touch-action: auto !important;
  }
}
//pad端
@media only screen and (min-width: 768px) and(max-width: 1199px) {
  .pc {
    display: none !important;
  }
  .mobile {
    display: none !important;
    touch-action: auto !important;
  }
  .pad {
    display: block !important;
    touch-action: auto !important;
  }
}
// 手机端
@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .mobile {
    display: block !important;
    touch-action: auto !important;
  }
  .pad {
    display: none !important;
    touch-action: auto !important;
  }
}
</style>

vue中的媒体查询

先说一下 css3 中的媒体查询

媒体查询 (英文:Media queries ),这个特性非常的实用,尤其是需要根据设备的类型或者根据特定的特征和设备参数,来修改网站中的CSS样式。

语法

@media mediatype and|not|only (media feature) {
    CSS-Code;
}

组成:

一个可选的媒体类型,告诉浏览器这段代码是用在什么类型的媒体上的,具体的媒体类型如下:

  • all:适用于所有设备(如果不写默认为all)。
  • print:适用于在打印预览模式下在屏幕上查看的分页材料和文档。
  • screen:主要用于屏幕。
  • speech:主要用于语音合成器。.

一个或者多个媒体特性表达式,是一个被包含的CSS生效所需的规则或者测试,媒体特性数量众多,主要的有如下这么几个:

  • aspect-ratio:用于检测视口的宽高比
  • width:用于检测视口的宽度,可以使用前缀min-width和max-width分别查询最小值和最大值
  • height:用于检测视口的高度,可以使用前缀min-height和max-height分别查询最小值和最大值
  • orientation:用于检测视口的屏幕方向
  • hover:根据用户当前的环境是否允许悬停在元素之上来应用不同的样式(例如电脑就可以进行悬悬停,触摸屏用户就无法进行悬停)

一组CSS规则,会在测试通过且媒体类型正确的时候应用。

下面是一般情况下通过宽度区分媒体途径的方法

//当屏幕最小宽度为992px 
@media screen and (min-width : 992px) {
    body {
        属性: 值
    }
}
//当屏幕宽度 最小为768px 最大为991px时 
@media screen and (min-width:768px) and (max-width:991px) {
    body {
       属性: 值
    }
}
//当屏幕最大宽度为767px 
@media screen and (max-width:767px) {
    body {
       属性: 值 
    }
}

vue 与 css3 中的 媒体查询有点不同

在vue中是不能直接使用@media的,我们必须结合less或者sass来使用它

安装命令

npm install sass-loader node-sass --save-dev
npm install less less-loader --save-dev

可能遇到的问题

lass 或者 sass 版本过高,可以适当降低版本,对应 vue 与 脚手架的版本

使用

方法一:

body{
    background-color:red;
    @media only screen and (max-width: 800px) {
    background-color:green;
  }
}

方法二

写n套页面,在使用这些页面的组件中进行一次媒体查询

但是需要引入 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: vue如何使用媒体查询实现响应式

本文链接: https://www.lsjlt.com/news/167816.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue如何使用媒体查询实现响应式
    目录使用媒体查询实现响应式的两种方式前提1.在每个组件中为其使用媒体查询2.写n套页面,在使用这些页面的组件中进行一次媒体查询vue中的媒体查询语法使用媒体查询实现响应式的两种方式 ...
    99+
    2022-11-13
  • css响应式网页如何实现媒体查询
    这篇文章将为大家详细讲解有关css响应式网页如何实现媒体查询,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。手写响应式网页,具体技术点有:1.声明viewport元标签(响...
    99+
    2022-10-19
  • CSS3媒体查询响应式布局bootstrap框架的使用
    这篇文章主要介绍CSS3媒体查询响应式布局bootstrap框架的使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!媒体设备类型使用详解:<!DOCTYPE html><html ...
    99+
    2023-06-08
  • HTML布局指南:如何使用媒体查询进行响应式设计
    随着移动设备的普及和多种屏幕尺寸的出现,响应式设计已经成为网页设计的重要组成部分。通过使用媒体查询(media queries)来调整和适应不同设备的屏幕大小,可以确保网页在不同的屏幕上表现出最佳的用户体验。媒体查询允许我们根据不同的设备条...
    99+
    2023-10-21
    响应式设计 媒体查询 HTML布局
  • 怎么利用媒体查询进行web响应式设计
    本篇内容主要讲解“怎么利用媒体查询进行web响应式设计”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么利用媒体查询进行web响应式设计”吧!首先看个实例在你开...
    99+
    2022-10-19
  • 媒体查询@media如何使用
    这篇文章主要讲解了“媒体查询@media如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“媒体查询@media如何使用”吧...
    99+
    2022-10-19
  • HTML布局技巧:如何使用媒体查询进行媒体样式控制
    文章摘要:本文将介绍如何使用媒体查询在HTML布局中进行媒体样式控制。我们将详细讲解什么是媒体查询,并提供一些具体的代码示例来展示如何使用媒体查询来实现不同屏幕尺寸下的布局调整。了解媒体查询媒体查询是CSS3的一个功能,它允许我们根据不同的...
    99+
    2023-10-21
    布局技巧 媒体查询 HTML样式控制
  • 如何在Dreamweaver中使用媒体查询命令
    这期内容当中小编将会给大家带来有关如何在Dreamweaver中使用媒体查询命令,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在菜单栏中,我们点击修改这个命令按钮。然后我们点击媒体查询这个二级菜单命令。不...
    99+
    2023-06-08
  • css中如何实现字体响应式
    这篇文章主要介绍了css中如何实现字体响应式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。问题场景:在实现响应式布局的过程中,如何设置字体大...
    99+
    2022-10-19
  • HTML布局指南:如何使用媒体查询进行样式流程控制
    引言:在现代网页设计中,响应式布局已成为不可忽视的重要因素。响应式布局可以使网页在不同设备上自适应,为用户提供更好的浏览体验。媒体查询是实现响应式布局的关键工具之一。本篇文章将介绍媒体查询的概念、语法和常见应用场景,并提供代码示例方便读者理...
    99+
    2023-10-21
    媒体查询 HTML布局 样式流程控制
  • MySQL 普通查询、流式查询、游标查询以及使用 mybatis 如何实现
    MySQL 普通查询、流式查询、游标查询以及使用 mybatis 如何实现 MySQL 普通查询、流式查询、游标查询以及使用 mybatis 如何实现普通查询流式查询游标查询mybatis 如...
    99+
    2023-09-28
    mybatis java mysql
  • Vue响应式原理与虚拟DOM如何实现
    本篇内容介绍了“Vue响应式原理与虚拟DOM如何实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、什么是响应式系统在Vue中,我们可以使...
    99+
    2023-07-05
  • vue响应用户事件如何实现
    本篇内容介绍了“vue响应用户事件如何实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!需求:页面上的列表原先有3个,我们想点击一次添加一条...
    99+
    2023-07-04
  • HTML布局技巧:如何使用媒体查询进行断点布局控制
    HTML布局技巧:如何使用媒体查询进行断点布局控制导语:随着移动设备的普及,响应式布局成为了现代网页设计的重要组成部分。而媒体查询是实现响应式布局的关键技术之一。本文将介绍媒体查询的基本概念和用法,并提供一些具体的代码示例,帮助读者更好地掌...
    99+
    2023-10-26
    媒体查询 HTML布局 断点布局控制
  • Vue源码学习之响应式是如何实现的
    目录前言一、一个响应式系统的关键要素1、如何监听数据变化2、如何进行依赖收集——实现 Dep 类3、数据变化时如何更新——实现 Watcher 类二、虚拟 DOM 和 diff1、虚...
    99+
    2022-11-12
  • 如何使用HTML和CSS实现响应式布局
    在今天的移动设备普及的时代,响应式布局成为了必须掌握的前端开发技能。借助HTML和CSS,我们可以轻松地实现一个适应不同屏幕尺寸和窗口大小的网页布局。本文将详细介绍如何使用HTML和CSS实现响应式布局,并提供一些具体的代码示例。使用媒体查...
    99+
    2023-10-21
    CSS html 响应式布局
  • 如何使用css3实现响应式滑动菜单
    小编给大家分享一下如何使用css3实现响应式滑动菜单,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   <!DOCTYP...
    99+
    2022-10-19
  • 使用MySQL如何实现分页查询
    目录一、分页1. 什么是分页2. 真分页3. 假分页4. 缓存层二、MySQL实现分页1. LIMIT用法2. 分页公式8种MySQL分页方法总结方法1: 直接使用数据库提供的SQL...
    99+
    2022-11-13
  • 使用mybatis如何实现查询缓存
    这篇文章将为大家详细讲解有关使用mybatis如何实现查询缓存,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1 缓存的意义将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上...
    99+
    2023-05-31
    mybatis 查询缓存
  • 如何使用jquery实现HTML5响应式导航菜单
    这篇文章将为大家详细讲解有关如何使用jquery实现HTML5响应式导航菜单,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。通过jquery+...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作