Henry前端笔记之 问答与思考

一 问答

1.什么是盒子模型

首先盒子模型包括分为两种:W3C标准盒子模型IE盒子模型
标准盒子模型:总的width = content-box + padding + border + margin 给盒子设置width属性是指的content-box宽度
IE盒子模型:总的width = border-box+ margin (border-box-content= padding + border +content) 给盒子设置width属性指的是border-box宽度
IE5.5及更早的版本使用的是IE盒模型。IE6及其以上的版本在标准兼容模式下使用的是W3C的盒模型标准。我们说这是一个好消息因为这意味着此盒模型问题只会出现在IE5.5及其更早的版本中。只要为文档设置一个DOCTYPE,就会使得IE遵循标准兼容模式的方式工作
css3的box-sizing属性给了开发者选择盒模型解析方式的权利。W3C的盒模型方式被称为“content-box”,IE的被称为“border-box”,使用box-sizing: border-box;就是为了在设置有padding值和border值的时候不把宽度撑开。

2.src与href的区别

href标识超文本引用,用在linka等元素上,是引用和页面关联,link是在当前元素和引用资源之间建立联系

src表示引用资源,表示替换当前元素,用在img,script,iframe上,src是页面内容不可缺少的一部分

src是source的缩写,是指向外部资源的位置,指向的内部会迁入到文档中当前标签所在的位置;在请求src资源时会将其指向的资源下载并应用到当前文档中,例如js脚本img图片frame等元素。

<script src="js.js"></script>当浏览器解析到这一句的时候会暂停其他资源的下载和处理,直至将该资源加载,编译,执行完毕,图片和框架等元素也是如此,类似于该元素所指向的资源嵌套如当前标签内,这也是为什么要把js放在底部而不是头部。

<link href="common.css" rel="stylesheet"/>当浏览器解析到这一句的时候会识别该文档为css文件,会下载并且不会停止对当前文档的处理,这也是为什么建议使用link方式来加载css而不是使用@import。

3.link和@import的区别

两者都是外部引用CSS的方式,但是存在一定的区别:

区别1:link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴,只能加载CSS。

区别2:link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。

区别3:link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。

区别4:ink支持使用Javascript控制DOM去改变样式;而@import不支持。

4.简述同步和异步的区别?

同步和异步其实只是一种消息通知机制
同步:js因为是单线程的,当程序执行到某个任务时,需要等到结果返回在执行下一个任务,这时候就是同步进行。
异步:当程序运行到某个任务时,不等待结果的返回,直接往下执行,当有结果的时候,会通过消息通知已经处理完成。

5 本地存储异同

在这里插入图片描述
localstorage常用方法

//存储
localStorage.setItem(key,value);
//获取
localStorage.getItem(key);
//删除
localStorage.removeItem(key);

6 请说出三种减少页面加载时间的方法

  • 压缩JS,CSS代码,把CSS放在顶部,把JS放在底部,最好把CSS和JS放到外部文件。
  • 合并图片,做成雪碧图。
  • 标明图片的宽度及高度。
  • 使用CDN(Content Delivery Network)网络加速
  • 服务器启用gzip压缩功能
  • 使用多域名负载网页内的多个文件、图片
  • 重复的HTTP请求数量应尽量减少

二,思考

1.站点Logo是否应该出现在标签h1中?

logo一般是作为图片或者图标的形式放在左上角,但是不应该放h1中,h1最好放网站的名称,这样更利于爬虫的抓取,有利于语义化。

2.是否应该支持IE6?

IE6的市场份额应该非常小了,但是如果是做的产品是面向政府等,如果他们还应用比较多,那就需要兼容,如果是面向整个互联网用户,我觉得没必要兼容了。

5.在链接中应该使用诸如“Click here” 一类的笼统词汇吗?

我觉得需要符合Web的语义化,链接的文字就应该是描述这个链接的,而不是“Click here”这一类的。

6.链接是否应该在新窗口打开?

我觉得如果是跳转到别的站点的链接,就应该在新窗口打开,如果是网站本身的页面,就可以直接采用跳转的形式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。在编写C程序时,需要注意变量的声明和定义、指针的使用、内存的分配与释放等问题。C语言中常用的数据结构包括: 1. 数组:一种存储同类型数据的结构,可以进行索引访问和修改。 2. 链表:一种存储不同类型数据的结构,每个节点包含数据和指向下一个节点的指针。 3. 栈:一种后进先出(LIFO)的数据结构,可以通过压入(push)和弹出(pop)操作进行数据的存储和取出。 4. 队列:一种先进先出(FIFO)的数据结构,可以通过入队(enqueue)和出队(dequeue)操作进行数据的存储和取出。 5. 树:一种存储具有父子关系的数据结构,可以通过中序遍历、前序遍历和后序遍历等方式进行数据的访问和修改。 6. 图:一种存储具有节点和边关系的数据结构,可以通过广度优先搜索、深度优先搜索等方式进行数据的访问和修改。 这些数据结构在C语言中都有相应的实现方式,可以应用于各种不同的场景。C语言中的各种数据结构都有其优缺点,下面列举一些常见的数据结构的优缺点: 数组: 优点:访问和修改元素的速度非常快,适用于需要频繁读取和修改数据的场合。 缺点:数组的长度是固定的,不适合存储大小不固定的动态数据,另外数组在内存中是连续分配的,当数组较大时可能会导致内存碎片化。 链表: 优点:可以方便地插入和删除元素,适用于需要频繁插入和删除数据的场合。 缺点:访问和修改元素的速度相对较慢,因为需要遍历链表找到指定的节点。 栈: 优点:后进先出(LIFO)的特性使得栈在处理递归和括号匹配等问题时非常方便。 缺点:栈的空间有限,当数据量较大时可能会导致栈溢出。 队列: 优点:先进先出(FIFO)的特性使得

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值