ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

vue pc 端和移动端响应式布局

2022-01-02 18:31:52  阅读:270  来源: 互联网

标签:vue 响应 px 单位 pc 视口 vw postcss viewport


vue pc 端和移动端响应式布局

源码: https://gitee.com/hellojinjin/vue-flexible-layout.git
技术栈:

  • postcss-px-to-viewport
  • 媒体查询
  • flex 布局
  • ui 组件(element-ui tabs 组件)

安装 postcss-px-to-viewport

npm install postcss-px-to-viewport

根目录新建 postcss.config.js 文件

//postcss.config.js文件
module.exports = {
  plugins: {
    'postcss-px-to-viewport': {
      unitToConvert: 'px', // 需要转换的单位,默认为"px"
      viewportWidth: 1920, // 设计稿的视口宽度
      unitPrecision: 5, // 单位转换后保留的精度
      propList: ['*'], // 能转化为vw的属性列表
      viewportUnit: 'vw', // 希望使用的视口单位
      fontViewportUnit: 'vw', // 字体使用的视口单位
      selectorBlackList: [], // 需要忽略的CSS选择器,不会转为视口单位,使用原有的px等单位。
      minPixelValue: 1, // 设置最小的转换数值,如果为1的话,只有大于1的值会被转换
      mediaQuery: false, // 媒体查询里的单位是否需要转换单位
      replace: true, //  是否直接更换属性值,而不添加备用属性
      exclude: undefined, // 忽略某些文件夹下的文件或特定文件,例如 'node_modules' 下的文件
      include: undefined, // 如果设置了include,那将只有匹配到的文件才会被转换
      landscape: false, // 是否添加根据 landscapeWidth 生成的媒体查询条件 @media (orientation: landscape)
      landscapeUnit: 'vw', // 横屏时使用的单位
      landscapeWidth: 1920, // 横屏时使用的视口宽度
    },
  },
}

媒体查询

/* assets/css/query.scss */
/* ##低分辨率的的手机 320-767px */
@media (min-width: 320px) and (max-width: 767px) {
  // css
}
//main.js
import '@/assets/css/query.scss'

说明

  • 宽度字体等 px 为单位的属性 通过postcss-px-to-viewport,可以转换为 vw
  • 布局变化可以通过媒体查询定制 css

展示

pc 端:
20220102175636
移动端:
20220102175706

标签:vue,响应,px,单位,pc,视口,vw,postcss,viewport
来源: https://www.cnblogs.com/php-noob-for-now/p/15757931.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有