当前位置: 首页 > news >正文

html排行榜代码手机版,移动端前端代码优化丨排名VS体验

移动端优化排名,成为现搜索引擎营销的新势头,手机网站参与移动端排名,成为获取流量一重量级选手,参与排名比不可少的因素是响应速度,很明显,相对于PC来说,移动端用户的耐性相对更低,手机版网站的加载速度成为现SEO都比较重视的问题。

bb620396afff1b6b1e5b2f31d888bcb3.png

这就要说到移动端网站如何进行优化了,从HTML来看,适当减少DOM元素使用,把CSS文件放置在head中,JavaScript 需放置在body标签前面,why?相信很多SEO不能理解,成都蔡江SEO进行详解其原因所在。

解析样式时,有的浏览器(FF)会停止脚本运行,而有的(Webkit)则会在脚本访问样式属性但可能受未加载样式影响时停止脚本运行

脚本解析中可能请求样式,如果样式还未解析完毕就会出错

脚本执行将暂停文档的解析和资源的下载

样式表不参与 DOM 修改,所以不会为了解析样式停止文档解析

浏览器要避免重绘,在没有拿到全部样式前不会开始渲染

因此,将二者放在适当的位置,能够极大提高渲染效率。

9fc91f747c6683663b4db3b617d22d88.png

脚本延迟加载

可将脚本添加 defer 和 async 属性。两个属性的共通点在于,脚本的加载和文档的解析是同步进行的,而区别在于:async 一旦加载完毕,立即停止文档解析并执行脚本;defer 等待文档解析完毕后再执行。

合理使用内联

脚本和样式,应按需选择内联或者外链。对于访问少、样式和脚本复用少的页面,可以考虑使用内联样式从而减少 HTTP 请求。但如果页面访问频繁,样式脚本在多个页面经常复用,使用外链则是最优选择。

无论如何,需要避免使用 @import 来导入样式。

而图像也是一样,高级浏览器支持将图像数据直接 base64 编码在 src 属性里,必要时可直接在 HTML 里输出图片数据。

减少iframe

iframe 本身有许多优点,比如可以并行下载脚本,适合加载慢内容(如广告),同时浏览器可以对其进行安全控制。

减少使用 iframe 的主要考虑是:iframe 会阻碍页面加载,同时也没有语义。

CSS

选择器

选择器效率排行如下:

ID选择器

类选择器

标签选择器

相邻选择器

子选择器

后代选择器

通配符选择器

属性选择器

伪类选择器

效率与优先级并不是对等关系,优先级高的不一定效率高。如 #id.class 合用比 单个 #id 的优先级高,但效率却比值慢。

选择器书写建议是:

避免使用通配符

252bba6709f25f6770150caa9aeade42.png

不使用标签名或类名修饰ID规则:如果规则使用ID选择器作为关键选择器,不要给规则添加标签名。因为ID本身就是唯一的,添加标签名会不必要地降低匹配效率

不使用标签名修饰类:相较于标签,类更具独特性

尽量选择最具体的方式:造成低效的最简单粗暴的原因就是在标签上使用太多规则。给元素添加类可以更快细分到类方式,可以减少规则去匹配标签的时间

关于后代选择器和子选择器:避免使用后代选择器,非要用的话建议用子选择器代替,但子选择器也要慎用,标签规则永远不要包含子选择器

利用可继承性:没必要在一般内容上声明样式

相关文章:

  • 计算机应用技术教程试题大一,大一计算机导论期末考试试题模拟试题及答案
  • 嵌入式计算机技术分类,嵌入式系统的分类及应用
  • 初中计算机课程图文混排教案,七年级信息技术教案:图文的混合编排
  • 天津城建大学计算机学院官网,天津城建大学计算机与信息工程学院研究生导师简介-杨振舰...
  • 计算机文化基础的改革,计算机学生论文,关于对计算机文化基础课程改革相关参考文献资料-免费论文范文...
  • 鲁迅美术学院考计算机几级,鲁迅美术学院英语四级考试科目安排2020年上半年...
  • 计算机实验圆述职报告,实验员个人述职报告(三)
  • k3 wise组件服务器安装,金蝶 K3 WISE 中间层组件安装报错!
  • outlook服务器与本地文件,Outlook设置本地存储的方法
  • ajax invoke error,javascript - invoke $ajax on confirmation - Stack Overflow
  • xen服务器池虚拟机自启,XenServer虚拟机开机自启
  • 苹果备忘录分享不了微信提示无法连接服务器,iOS App分享无法调起微信,Universal Links 已配置,并可以备忘录唤起App...
  • fgo服务器维护2018,fgo国服2018年10月15日更新维护公告,职阶区别推荐召唤卡池开启...
  • kali修改文件权限不够_Linux下的权限维持
  • 手机连接不上电脑只显示充电_黑鲨手机如何正确打开USB调试和文件传输功能
  • [译] 怎样写一个基础的编译器
  • 【剑指offer】让抽象问题具体化
  • 07.Android之多媒体问题
  • 3.7、@ResponseBody 和 @RestController
  • angular学习第一篇-----环境搭建
  • Electron入门介绍
  • JavaScript创建对象的四种方式
  • VuePress 静态网站生成
  • 初探 Vue 生命周期和钩子函数
  • 电商搜索引擎的架构设计和性能优化
  • 前端知识点整理(待续)
  • 使用common-codec进行md5加密
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • #includecmath
  • #include到底该写在哪
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (iPhone/iPad开发)在UIWebView中自定义菜单栏
  • (LeetCode) T14. Longest Common Prefix
  • (libusb) usb口自动刷新
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)springboot教学评价 毕业设计 641310
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (算法)求1到1亿间的质数或素数
  • (学习日记)2024.01.09
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • (转)winform之ListView
  • (转)关于pipe()的详细解析
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .apk 成为历史!
  • .form文件_一篇文章学会文件上传
  • .net使用excel的cells对象没有value方法——学习.net的Excel工作表问题
  • // an array of int
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • @ModelAttribute 注解
  • [Android] 240204批量生成联系人,短信,通话记录的APK