pc端和移动端切换

1. 切换.html(同一套css)

网页通常需要适配pc端和移动端,适配可以通过响应式布局判断屏幕尺寸来展示不同的效果,还可以通过编写两个页面,也就是pc端和移动端分别写一个页面,这种方式更方便功能模块的编写。

通常情况下,pc端域名使用www,而移动端域名使用m,在编写pc和移动两个页面时,在实际页面加载时需要加载到对应的页面,所以需要判断设备的类型,让搜索引擎和浏览器知道,pc端用户应该访问那个页面,移动端用户应该访问哪个页面。

//判断是手机还是电脑
	if((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) {
	    window.location.href = "./mobile/index.html";     //手机
	} else {
	    window.location.href = "./web/index.html";     //电脑
	}

2. 切换css(同一套html)

 // 利用媒体查询 link不同的CSS文件:
<link rel="stylesheet" media="screen and (min-width:1px) and (max-width:500px)" href="/css/d1.css" />
<link rel="stylesheet" media="screen and (min-width:500px)" href="/css/d2.css" />

// meta标签:
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
  • 4
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
根据提供的引用内容,可以得知在Vue2中,可以通过动态组件和$store.state.device来控制当前展示的页面pc端还是移动端。同时,为了适应移动端设备的屏幕大小不一,可以使用postcss-px-to-viewport将项目中的px单位转换为vw。 下面是一个简单的例子,演示如何在Vue2中实现pc端移动端切换,并使用postcss-px-to-viewport将px单位转换为vw: 1.在index.vue中定义pc.vue和m.vue组件,并使用动态组件和$store.state.device来控制当前展示的页面pc端还是移动端: ```html <template> <div> <component :is="device === 'pc' ? 'pc' : 'm'"></component> </div> </template> <script> import pc from './pc.vue' import m from './m.vue' export default { components: { pc, m }, computed: { device() { return this.$store.state.device } } } </script> ``` 2.在postcss.config.js中配置postcss-px-to-viewport插件,将px单位转换为vw: ```javascript module.exports = { plugins: { 'postcss-px-to-viewport': { viewportWidth: 750, // 设计稿宽度 unitPrecision: 3, // 转换后保留的小数位数 viewportUnit: 'vw', // 转换后的单位 selectorBlackList: ['.ignore', '.hairlines'], // 不转换的类名 minPixelValue: 1, // 小于等于1px的不转换 mediaQuery: false // 允许在媒体查询中转换px } } } ``` 3.在组件中使用vw单位代替px单位: ```html <template> <div class="container"> <div class="box"></div> </div> </template> <style scoped> .container { width: 100vw; height: 100vw; } .box { width: 100px; height: 100px; background-color: red; } </style> ``` 以上是一个简单的例子,演示了如何在Vue2中实现pc端移动端切换,并使用postcss-px-to-viewport将px单位转换为vw。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值