怎样让移动端的网页内容自适应

这次给大家带来怎样让移动端的网页内容适应,移动端的网页内容自适应的注意事项有哪些,下面就是实战案例,一起来看一下。

终于完成了手头的项目,失踪人口又回归啦!在做项目的过程中,遇到很多值得思考的点,速速道来。 第一个遇到的就是网页大小自适应的问题。

目前比较常用的方法有:

• 首先要让页面大小铺满屏幕又不能溢出。只需要在html

标签内加入viewport(如下),参数分别表示:页面宽度= 屏幕宽度,最大和最小伸缩比都是1,不允许用户拉缩。


• 百分比自适应:把长度单位转换为百分比来表示,这样在不同的宽度下,元素的长宽也会随之变化。

优点:宽度之间无缝衔接, 操作起来也相对比较方便。

缺点:字体大小需要另外一套自适应方法来调整;当屏幕宽度大于700px后,继续按照百分比元素会偏大,这个时候调整起来会比较麻烦。

•rem、em自适应 :用媒体查询的方法,确定在不同屏幕宽度下,改变或

的fontsize。再用rem, em替代 px作为单位实现自适应。

优点:可以根据不同屏幕宽度来设置,可以完美解决上面说的屏幕偏大时的比例问题。字体的大小也不存在问题。

缺点:根据宽度区间来设置,无法实现无缝变换。

——————————————————————————–

这些兼容方法各有优缺点,都不算完美,怎样才能把优点结合在一起,同时避免缺点呢?

在参考淘宝网的自适应方法时,偶然发现页面的fontsize会根据屏幕的宽度自动调整,而且屏幕宽度和所设字体大小的商是一定的。

于是猜想它是用JS获取屏幕宽度后,按照固定比例缩小后作为rem的单位长度实现自适应。

这不就是优点全有滴解决方法吗!?请容许我激动一下下(☆_☆)

——————————————————————————–

JS代码写起来非常简单,而且完美解决了用rem来设置无法达到无缝衔接的问题。

但移动端测试后问题就出现了,移动端safari在html加载完毕之前将JS以迅雷不及掩耳盗铃之势执行了,在页面没有按照viewport设置好宽度前,JS就读取了错误的宽度,导致元素变成原来的两倍大0^0, 需要用setTimeout()解决问题。

——————————————————————————–

最终代码

Zepto(function($){       var win = window,           doc = document;         function setFontSize() {           var winWidth =  $(window).width();           // 640宽度以上进行限制           var size = (winWidth / 640) * 100;           doc.documentElement.style.fontSize = (size < 100 ? size : 100) + 'px' ;       };              //防止在html未加载完毕时执行,保证获取正确的页宽       setTimeout(function(){           // 初始化           setFontSize();                  }, 200);       });

最后补充用rem做自适应过程中发现的一个坑--当html设置较大的fontsize时,块元素内的行内元素margin、padding会出现额外的值,解决办法是把外面包的块元素fontsize设置为0。

相信看了这些案例你已经掌握了方法,更多精彩请关注创想鸟其它相关文章!

相关阅读:

table表格中的内容溢出应该如何处理

怎么实现获取textarea的动态剩余字数

html关于PHP你必须知道的重要知识点

以上就是怎样让移动端的网页内容自适应的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1545621.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月21日 17:10:56
下一篇 2025年12月18日 23:18:25

相关推荐

  • 优化HTML提高网页性能的方法

           要想提高网页性能有很多办法,除了用js或者通过服务器的配置和css的调整来提高网页性能外,其实我们还可以通过HTML来提高网页性能。        HTML正在变得越来越大。排名前100的网站每个HTML页面大多在40K左右。亚马逊和雅虎使用上千个HTML页面。在youtube.com…

    好文分享 2025年12月21日
    000
  • html规定元素内容是否可编辑的属性contenteditable

    实例 一段可编辑的段落: 这是一个可编辑的段落。 浏览器支持 IE Firefox Chrome Safari 立即学习“前端免费学习笔记(深入)”; Opera 所有主流浏览器都支持 contenteditable 属性。 定义和用法 contenteditable 属性规定元素内容是否可编辑。 …

    好文分享 2025年12月21日
    000
  • html规定元素内容的文本方向的属性dir

    实例 一段方向从右向左的段落: Write this text right-to-left! 浏览器支持 所有浏览器均支持 dir 属性。 定义和用法 dir 属性规定元素内容的文本方向。 提示和注释 注释:dir 属性在以下标签中无效:, , , , , 以上就是html规定元素内容的文本方向的属…

    好文分享 2025年12月21日
    000
  • html规定元素内容的语言属性lang

    实例 段落中的一些法文: Ceci est un paragraphe. 浏览器支持 所有浏览器均支持 lang 属性。 定义和用法 lang 属性规定元素内容的语言。 提示和注释 注释:lang 属性在以下标签中无效:, , , set>, , 以上就是html规定元素内容的语言属性lang…

    好文分享 2025年12月21日
    000
  • 总结如何在HTML网页中插入视频方法

    这篇文章主要介绍了html网页中插入视频的方法小结,需要的朋友可以参考下 现在如果要在页面中使用video标签,需要考虑三种情况,支持Ogg Theora或者VP8(如果这玩意儿没出事的话)的(Opera、Mozilla、Chrome),支持H.264的(Safari、IE 9、Chrome),都不…

    好文分享 2025年12月21日
    000
  • 优化html代码加快网页加载速度

         web开发人员是否必须掌握复杂的组件技术才能加快html页面的访问速度?答案是:不一定!实际上,有许多关于HTML与DHTML方面的技巧,它们原理简单而且上手容易。无论是技术高超的老手,还是初涉编程的菜鸟,领会这些都十分必要。      明显HTML,暗渡“公用脚本”      减少web…

    好文分享 2025年12月21日
    000
  • 如何调整html网页中图片大小?

    CSS包含一个控制元素宽度的width属性。像控制字体一样,我们使用px(像素)来指定图片的宽度。 例如,如果我们想要创建一个名为larger-image的类选择器,把HTML元素的宽度设定为500像素,我们使用: .larger-image { width: 500px; } 任务:创建一个名为s…

    2025年12月21日
    000
  • 优化网页视频播放性能:通过动态管理src属性节省内存

    本教程旨在解决网页中多个视频弹窗导致的内存占用过高问题。通过演示一种高效的JavaScript策略,我们将在视频打开时动态设置其`src`属性,并在关闭时将其清空,从而有效释放设备内存,提升网页性能和用户体验,尤其是在资源受限的环境下。 在现代网页设计中,视频内容已成为吸引用户的重要元素。然而,当网…

    2025年12月21日
    000
  • 实现交互式FAQ手风琴:点击展开与折叠的动态效果

    本教程详细讲解如何构建一个交互式FAQ手风琴组件,使其在点击时能流畅地展开和折叠,并确保同一时间只有一个FAQ项处于展开状态。文章将分析HTML结构、CSS样式,并提供优化的JavaScript代码,实现点击切换、自动关闭其他项以及动态图标更新功能。 手风琴组件概述与挑战 faq(常见问题)手风琴组…

    2025年12月20日
    000
  • PHPWord DOCX 转 HTML:页眉页脚缺失的原理与限制

    PHPWord 在将 DOCX 文档转换为 HTML 格式时,其内置的 HTML 写入器不会输出页眉和页脚内容。这主要是由于页眉和页脚是针对页面打印而设计的元素,与 HTML 的流式文档结构及显示机制不兼容。因此,PHPWord 的 HTML 导出功能不包含这些打印专属元素。 PHPWord HTM…

    2025年12月10日
    000
  • 曝三星下一代 Chromebook 屏幕支持自适应色彩功能

    据 chrome unboxed 报道,chromium gerrit 的一项更新暗示,三星即将推出的下一代 chromebook 将配备具有自适应色彩功能的显示屏。这项技术将允许设备根据周围的光线条件自动调整屏幕的色彩和温度,而不仅仅是依靠手动设置。虽然现有的 chromebook 通常不具备即时…

    2025年12月5日
    000
  • mysql 查询指定日期时间内容sql查询语句

    如果是月份就是当前的月减去你要统计的时间如我要查询数据库中从今天起往前三个月的所有记录,我们的语句如下:mktime(date(\’h\’),date(\’i\’),date(\’s\’),date(\’m\&#82…

    数据库 2025年12月2日
    000
  • CSS定位方式有哪些_CSS五种定位方式详解与区别

    CSS定位五种方式中,static为默认定位,元素遵循文档流;relative使元素相对自身原位置偏移但仍占位;absolute让元素脱离文档流并相对于最近非static祖先定位;fixed使元素脱离文档流并相对于视口固定;sticky则在滚动到特定位置时由relative变为fixed效果。常用r…

    2025年12月2日 web前端
    000
  • CSS网格布局如何创建_CSSGrid网格系统搭建指南

    CSS Grid通过在父容器定义行和列,为子元素提供二维定位系统。首先设置display: grid创建网格容器,并用grid-template-columns和grid-template-rows定义网格结构,fr单位实现弹性布局,gap设置间距。接着使用grid-column、grid-row或…

    2025年12月2日 web前端
    000
  • 华为开发者大会2024内容及时间安排

    华为开发者大会2024将于6月21日至23日在东莞松山湖举行,这是是华为面向全球信息技术科技领域开发者们所打造的年度交流分享活动,感兴趣的朋友可以通过其官网购买门票报名参与,这里整理了华为开发者大会2024内容及时间安排详情,一起来看看吧。 据华为开发者大会2024官方介绍显示,华为将分享Harmo…

    2025年12月2日 行业动态
    000
  • 动态导航栏图标切换:滚动状态下汉堡菜单消失问题的解决方案

    本文深入探讨了在网页滚动时动态切换导航栏图标(特别是汉堡菜单)所遇到的常见问题:当页面处于滚动状态并关闭菜单后,汉堡图标可能意外消失。文章分析了问题的根源在于JavaScript的show()方法与CSS样式规则之间的冲突,并提供了一个通过使用removeAttr(“style&#822…

    2025年11月29日 web前端
    000
  • HTML代码怎么实现模态框_HTML代码模态框功能实现与样式定制方法

    模态框的核心结构是外层div(modal)负责遮罩和定位,内层div(modal-content)承载内容,通过HTML构建、CSS控制显示与居中、JavaScript实现交互逻辑,并建议添加ARIA属性和焦点管理以提升可访问性。 模态框,或者我们常说的Modal,在网页设计里是个非常实用的交互组件…

    2025年11月29日 web前端
    000
  • 如何使用 JavaScript 实现网页倒计时功能?

    如何使用 JavaScript 实现网页倒计时功能? 随着互联网的发展,网页设计越来越重要。倒计时功能是常见的一种网页设计元素,可以在特定场景中增加用户体验。比如在购物网站上,倒计时功能可以提醒用户还有多少时间可以享受促销活动;在活动页面上,倒计时功能可以引起用户的注意,并激发他们参与活动的热情。那…

    2025年11月27日 web前端
    000
  • 如何使用 JavaScript 实现网页打字机效果?

    如何使用 JavaScript 实现网页打字机效果? 在网页设计中,打字机效果(Typewriter Effect)是一种常见的动态效果,可以为网页增添一些趣味和交互性。本文将介绍如何使用 JavaScript 实现网页打字机效果,并提供具体的代码示例。 在开始编写打字机效果的代码之前,我们首先需要…

    2025年11月27日 web前端
    000
  • jQuery鼠标悬停内容动画切换效果实现代码

    本文主要介绍了jquery鼠标悬停内容动画切换效果的实例。具有很好的参考价值。下面跟着小编一起来看下吧,希望能帮助到大家。 效果如下: 代码如下: jQuery鼠标悬停内容动画切换效果 * { margin: 0; padding: 0; list-style: none; } img { bord…

    2025年11月26日 数据库
    000

发表回复

登录后才能评论
关注微信