2021.10.21 - 学习记录

  1. 一个算法: 欧几里得算法,最大公约数
  2. 前端学习知识点:很多网站不常用table iframe这两个元素,知道原因吗?

证明:

1. 算法:

// 求两个数的最大公约数
public class GreatestCommonDivisor {
    public static int getGreatestCommonDivisor (int p, int q) {
        if (q == 0) return p;
        int r = p % q;
        return getGreatestCommonDivisor(q, r);
    }
}

2. 面试题:

很多网站不常用table iframe这两个元素,知道原因吗?
答:因为浏览器页面渲染的时候是从上至下的,而table 和 iframe 这两种元素会改变这样渲染规则,他们是要等待自己元素内的内容加载完才整体渲染。用户体验会很不友好。

iframe

坏处:

  • 是一个单独的容器,因此不会应用全局的CSS样式
  • 会和网页共用域名连接池,因此可能由于iframe占用了连接数导致加载阻塞
  • 搜索引擎爬虫不易爬取,不利于SEO
  • 相比直接操作DOM元素,使用iframe更耗费资源

好处:

  • 可以用其展示广告,可以避免由于添加广告而网站被爬虫拒绝收录的情况

table

坏处:

  • table的内容会等内部的所有内容加载完成才会显示,比基于div+css实现的表格布局加载速度慢。
  • 会导致网页语义发生错误,不利于无障碍功能
  • 改动内部内容会造成整个table重绘,消耗更多资源

好处:

  • 前期广泛用于后台管理系统,由于普通的后台管理系统大多都是表格布局,基于table编程难度低
    且面向内网的管理系统对性能要求没那么高
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章