- 一个算法: 欧几里得算法,最大公约数
- 前端学习知识点:很多网站不常用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编程难度低
且面向内网的管理系统对性能要求没那么高
网友评论