2016.06 第二周 群问题分享

HTML+CSS

display:none与visibility:hidden相同点与不同点

2016.06.06~2016.06.10

核心概念

display与visibility属性

参考答案

相同点:

display:none和visibility:hidden都能把网页上的某个元素隐藏起来;

不同点:

display:none

1、不为被隐藏的标签保留其物理空间,即该标签在页面上彻底消失(标签还在网页中,只是不占物理空间而已);

2、隐藏标签的时候会产生reflow和repaint(回流与重绘);

3、父元素设置display: none;父节点及其子孙节点元素全部不可见,而且无论其子孙元素如何设置都显示不出来;

visibility:hidden

1、使标签在网页上不可见,但该标签在网页上所占的空间没有改变;

2、隐藏标签的时候不会产生前端性能的问题,换句话说它不会引起回流与重绘;

3、给一个父元素应用visibility:hidden,则其子孙后代也都会全部不可见。但是如果我们给子孙元素应用了visibility:visible,那么这个子孙元素又会显示出来;

在Android2.3自带浏览器不支持border-radius百分比的问题

2016.06.06~2016.06.10

核心概念

CSS3的border-radius属性

参考答案

通常我们实现一个正圆只需要border-radius: 50%即可,大致代码如下:

.foo { 
    width: 100px; 
    height: 100px; 
    border:1px solid blue;
    border-radius: 50%; 
}

然而在Android 2.3 是不支持百分比的,要兼容的话我们只能使用一个较大的值,比如border-radius: 999px;

JavaScript

Date()与new Date()有什么区别

2016.06.06~2016.06.10

核心概念

Date()、new Date()

参考答案

Date()直接返回当前时间字符串,不管参数是number还是任何string;

Date();
Date('h5course');
Date(500);
//Wed Jun 08 2016 15:56:26 GMT+0800 (中国标准时间)

而new Date()则是会根据参数来返回对应的值,无参数的时候,返回当前时间的字符串形式;有参数的时候返回参数所对应时间的字符串。new Date()对参数不管是格式还是内容都有要求且只返回字符串;

new Date();
//Wed Jun 08 2016 15:56:26 GMT+0800 (中国标准时间)
 
new Date(500);
//Thu Jan 01 1970 08:00:00 GMT+0800 (中国标准时间)
 
new Date('2015/06/13 16:00:00');
//Sat Jun 13 2015 16:00:00 GMT+0800 (中国标准时间)


new Date('h5course');
new Date('2016-01-22-5:20:00');
//Invalid Date
 
new Date('2016-06-08T16:00:00') - new Date('2016/01/22 5:20:00');
//11990400000

从上面几个测试结果可以很容易发现

  1. new Date()在参数正常的情况只会返回当前时间的字符串(且是当前时区的时间);
  2. new Date()在解析一个具体的时间的时候,对参数有较严格的格式要求,格式不正确的时候会直接返回Invalid Date(无效的时间);
  3. 虽然new Date()的返回值是字符串,然而两个new Date()的结果字符串是可以直接相减的,结果为两个时间相差的毫秒数;

cookie的弊端

2016.06.06~2016.06.10

核心概念

cookie

参考答案

cookie虽然在持久保存客户端数据提供了方便,分担了服务器存储的负担,但还是有很多局限性的:

  1. IE6或更低版本最多20个cookie;
  2. IE7和之后的版本最后可以有50个cookie;
  3. Firefox最多50个cookie;
  4. Chrome和Safari没有做硬性限制;

优点:极高的扩展性和可用性

  1. 通过良好的编程,控制保存在cookie中的session对象的大小;
  2. 通过加密和安全传输技术(SSL),减少cookie被破解的可能性;
  3. 只在cookie中存放不敏感数据,即使被盗也不会有重大损失;
  4. 控制cookie的生命期,使之不会永远有效。偷盗者很可能拿到一个过期的cookie;

缺点:

  1. cookie数量和长度的限制。每个domain最多只能有20条cookie,每个cookie长度不能超过4KB,否则会被截掉;
  2. 安全性问题。如果cookie被人拦截了,那人就可以取得所有的session信息。即使加密也与事无补,因为拦截者并不需要知道cookie的意义,他只要原样转发cookie就可以达到目的了;
  3. 有些状态不可能保存在客户端。例如,为了防止重复提交表单,我们需要在服务器端保存一个计数器。如果我们把这个计数器保存在客户端,那么它起不到任何作用;

http状态码有那些?分别代表是什么意思

2016.06.06~2016.06.10

核心概念

http状态码

参考答案

对于前端开发人员来说,首先需要了解1~5开头的HTTP状态码分别是什么含义:

  • 1XX 表示消息
  • 2XX 表示成功
  • 3XX 表示重定向
  • 4XX 表示请求错误
  • 5XX 表示服务器端错误

常见HTTP状态码:

  • 200 OK 表示请求成功 一切正常
  • 301 Moved Permanently 重定向,客户请求的文档在其他地方,新的URL在Location头中给出,浏览器应该自动地访问新的URL
  • 302 Found 临时重定向,类似于301,但新的URL应该被视为临时性的替代,而不是永久性的。
  • 304 Not Modified 客户端有缓冲的文档并发出了一个条件性的请求。服务器告诉客户,原来缓冲的文档还可以继续使用。
  • 400 Bad Request 请求出现语法错误。
  • 403 Forbidden 资源不可用。
  • 404 Not Found 无法找到指定位置的资源。
  • 405 Method Not Allowed 请求方法(GET、POST、HEAD、Delete、PUT、TRACE等)对指定的资源不适用。
  • 500 Internal Server Error 服务器遇到了意料不到的情况,不能完成客户的请求。
  • 501 Not Implemented 服务器不支持实现请求所需要的功能

HTML5学堂小编 - 陈林&堡堡 耗时6.5h

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2016-06-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

某开源博客系统最新版源码审计

近期审计一个JAVA开源博客系统mblog2.5最新版,整体系统还是很安全的,漏洞较少,传统的问题像XSS系统使用全局过滤的方式进行实体化处理,上传问题使用白名...

625
来自专栏编程

史上最全Django知识总结!神级程序员强推:掌握此文就掌握Django

一、视图函数(views.py中的函数):第一个参数类型是HttpRequest对象,返回值是HttpResponse对象 二、URLconf(urls.py)...

3417
来自专栏xingoo, 一个梦想做发明家的程序员

基于RequireJS和JQuery的模块化编程——常见问题解析

由于js的代码逻辑越来越重,一个js文件可能会有上千行,十分不利于开发与维护。最近正在把逻辑很重的js拆分成模块,在一顿纠结是使用requirejs还是sea...

19510
来自专栏IMWeb前端团队

【原译】javascript中的错误处理

本文作者:IMWeb ouven 原文出处:IMWeb社区 未经同意,禁止转载 【原译】javascript中的正确错误处理 A Guide to P...

2119
来自专栏上善若水

003互联网网络技术之WireShark过滤语法

less than 小于 < lt 小于等于 le 等于 eq 大于 gt 大于等于 ge 不等 ne

1006
来自专栏opengps

已经开发好的网站,进行多语言支持

最近开发一个项目,由于在欧洲使用,对于语言种类的要求比较多,本来只开发的中文,给华人华侨使用,但是业务需要,有些老外也需要使用这个项目,被要求进行多语言改造 但...

3324
来自专栏Laoqi's Linux运维专列

tcpdump详解

1863
来自专栏腾讯移动品质中心TMQ的专栏

内存泄漏漫谈

对于C/C++来说,内存泄漏问题一直是个很让人头痛的问题,因为对于没有GC的语言,内存泄漏的概率要比有GC的语言大得多,同时,一旦发生问题,也严重的多,而且,内...

2107
来自专栏游戏杂谈

Nginx中的PHP缓冲问题

按代码理解似乎应该是每过1秒钟,将输出一个数字,从10~1 (运行时间>10ms)

742
来自专栏日常学python

数据抓取实践:对加密参数及压缩混淆 JS 的逆向分析

本文会介绍几种分析技巧,需要一点前端知识(总感觉在前端做防爬没什么意义,因为源码都是公开的)。文末附上爬虫 Demo 验证,虽然对于这个案例来说使用 Selen...

1170

扫码关注云+社区