rem+css轮播查询实现网页自适应

通过rem和css轮播查询实现网页自适应

最近工作需要开发一个简单的看板,就随便写了一个看板实现。但忽略了不同显示器分辨率不同的问题。自己使用的都是1920 * 1080的,这导致在大屏看板(分辨率是960*485)展示的时候出现了混乱。

所以便采用轮播查询来实现自适应的操作,废话不多说,直接操作实现。

一、设置根元素的字体大小
html{
    font-size: 16px;
}

我这里采用的是默认1rem=16px;谷歌浏览器就是这个比例。

二、注意事项

1、html页面一定要加这个,放置head标签中,基本现在所有的html页面都会加这个标签

<meta name="viewport" content="width=device-width, initial-scale=1.0">

2、所有的单位采用rem来表示,%也可以,不要使用px来表示。具体区别看度娘哈哈😁。

三、css轮播查询实现

使用轮播查询时,按大在前小在后的顺序写。

@media all and (max-width: 1441px) {  /*当屏幕尺寸小于1440px时,应用下面的CSS样式*/
    html{
        font-size: 12px !important;
    }
}

@media all and (max-width: 1201px) {  /*当屏幕尺寸小于1200px时,应用下面的CSS样式*/
    html{
        font-size: 10px !important;
    }
}

@media all and (max-width: 961px) {  /*当屏幕尺寸小于960px时,应用下面的CSS样式*/
    html{
        font-size: 8px !important;
    }
}

font-size的计算方式:现分辨率/原分辨率*初始时设置的根元素字体大小。如我开始的分辨率是1920的,设置的根元素字体大小是16px,现在要改变分辨率为1440,此时的根元素font-size=1440/1920×16=12

当然,我们也可以通过js来实现,通过js来获取页面的宽高来实现。度娘上有好多大佬有这方面的教程,我一个小白就不多讲了。
好了,使用rem+轮播查询实现自适应大概就是 这样了。如有不足之处,请各位多多指教。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的例子,展示如何使用HTMLCSS和JavaScript来创建一个响应式导航菜单。该菜单会在电脑和手机端自动适应。 首先,我们需要一个HTML结构,包含一个导航栏和一个菜单按钮。代码如下: ```html <nav> <div class="logo">Logo</div> <ul class="nav-links"> <li><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">Contact</a></li> </ul> <div class="burger"> <div class="line1"></div> <div class="line2"></div> <div class="line3"></div> </div> </nav> ``` 接下来,我们需要使用CSS来设置导航栏和菜单按钮的样式。代码如下: ```css nav { display: flex; justify-content: space-between; align-items: center; background-color: #333; color: white; position: relative; z-index: 1; } .logo { font-size: 1.5rem; margin-left: 1rem; } .nav-links { display: flex; justify-content: space-around; width: 50%; } .nav-links li { list-style: none; } .nav-links a { color: white; text-decoration: none; font-size: 1.2rem; } .burger { display: none; cursor: pointer; } .burger div { width: 25px; height: 3px; background-color: white; margin: 5px; } ``` 现在,我们需要使用JavaScript来处理菜单按钮的点击事件,并根据屏幕宽度来切换菜单的显示和隐藏。代码如下: ```javascript const burger = document.querySelector('.burger'); const nav = document.querySelector('.nav-links'); burger.addEventListener('click', () => { nav.classList.toggle('nav-active'); burger.classList.toggle('toggle'); }); window.addEventListener('resize', () => { if (window.innerWidth > 768) { nav.classList.remove('nav-active'); burger.classList.remove('toggle'); } }); ``` 最后,我们需要使用CSS来设置响应式菜单的样式。代码如下: ```css @media screen and (max-width: 768px) { .nav-links { position: absolute; right: 0px; height: 92vh; top: 8vh; background-color: #333; display: flex; flex-direction: column; align-items: center; width: 50%; transform: translateX(100%); transition: transform 0.5s ease-in; } .nav-links li { opacity: 0; } .burger { display: block; position: absolute; top: 3vh; right: 5vw; } .nav-active { transform: translateX(0%); } .nav-links li { opacity: 1; transition: opacity 0.5s ease-in; } } ``` 这些代码将创建一个响应式导航菜单,可以在电脑和手机端自动适应。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值