最近尝试一些小玩意儿,学到了不少东西,特此总结一下,省得自己忘了。
1. 小栗子
一般登陆时都会有提示如图中的:请输入您的用户名,以前我们都是在label控件里写上这样的话,而现在不用了,可以直接在图中的textbox控件中加入提示语,当用户输入信息时提示语消失,这要用到我们的placeholder属性,例如代码中的样子,之后就能实现这样的功能了。
<input name="password" onclick="this.value = ''; this.style.color = '#999999'" placeholder="请输入您的用户密码" maxlength="15" />
2.css中padding和margin有什么区别?
最近总是把padding和margin弄混,所以查了查。
margin是指从自身边框到另一个容器边框之间的距离,就是容器外距离。(外边距)
padding是指自身边框到自身内部另一个容器边框之间的距离,就是容器内距离。(内边距)
这两个的区别:padding是不能设为负值的,而margin是可以设为负值的。
在块元素中:
padding在块级元素下,上下左右可以随意设定,会对元素内部发生改变。
在内联元素中:
行内非替换元素上设置的内边距不会影响行高计算;因此,如果一个元素既有内边距又有背景,从视觉上看可能会延伸到其他行,有可能还会与其他内容重叠。元素的背景会延伸穿过内边距。不允许指定负边距值,行内元素的padding元素,只有padding-left和padding-right有效果,上下不识别;
在块元素中:
因此,margin在块级元素下,上下左右可以随意设定。且块级元素的margin的参照基准是前一个元素即相对于自身之前的元素有margin距离。如果元素是第一个元素,则就是相对于父元素的margin距离。
在内联元素中:
margin-top和margin-bottom对内联元素(对行)的高度没有影响,如果你要改变内联元素的行高即类似文本的行间距,那 么你只能使用这三个属性:line-height,fong-size,vertical-align。请记住,这个影响内联元素高度的是line-height而不是height。
3.ajax技术
ajax包括 异步 javascript 和 xml。 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这种技术是xmlhttprequest来支持的,它用来在后台与服务器交换数据。它通过两个方法向服务器发送请求:open和send,open方法需要三个参数,而send方法需要一个参数。
方法 | 所需参数 |
---|---|
open | 1.规定请求的类型是post还是get 2.规定服务器脚本的url(可以是任何类型的文件) 3.规定对请求进行异步处理(true为异步,false为同步) |
send | string型,只用于post请求 |
get和post是向服务器发送请求的两种方式,get方式相较于post方式更简单快捷,大部分情况下都能使用。但是一些特殊情况下只能用post方式。
三种情况 |
---|
1.无法使用缓存文件 2.需要向服务器发送大量数据(post方式是没有限制的) 3.发送包含未知字符的用户输入时,post更稳定可靠 |
xmlhttprequest还有三个属性:
属性 | 介绍 | 其余介绍 |
---|---|---|
onreadystatechange | 存有处理服务器响应的函数 | 无 |
readyState | 存有服务器响应的状态信息 | 0 请求未初始化(在调用 open() 之前) 1 请求已提出(调用 send() 之前) 2 请求已发送(这里通常可以从响应得到内容头部) 3 请求处理中(响应中通常有部分数据可用,但是服务器还没有完成响应) 4 请求已完成(可以访问服务器响应并使用它) |
responseText | 取回由服务器返回的数据 | 无 |
最后附上一个教程链接W3school,有介绍有例子(介绍不详细,需要自己去找其他资料),可以试着看看,挺有意思。