春天将过,来个知识小结

  总结一下,都比较零碎:

  1、发现Firefox中文本框样式设了vertical-align:middle后,光标无法垂直居中,只能在js中设置padding弥补。一直以来视FF为Web标准,看来也不是完美的,Chrome才是权威。不过Firebug实在太好用了。

  2、终于明白了一个元素如果是绝对定位,其定位数值是根据上级相对定位元素(position:relative)算的,要是没有,就是相对body。

  3、还明白了所有绝对定位及浮动元素,display都是block的。这和上条一样,简单不能简单的道理了,现在才知道,悲剧啊!

  4、又找到一个IE6的Bug-不支持样式类连写,像 .a.b { color:blue }会被解释成 .b {color:blue}。

  5、开始用match方法检索URL。检索结果为null说明没找到,找到了则返回一个数组,第一个元素是匹配结果,其他的是各个子匹配(写在正则括号里的)。

  6、曾经以为IE的event对象很方便,现在才知道W3C标准的道理。像在IE中,要是在事件响应函数中触发其他事件,比如focus(),原事件会被覆盖,想取消或遵循事件也不可能了。只好用setTimeout来解决,但代码看上去不爽。

  7、小键盘和主键盘,即使同样的键,KeyCode也是不同的(包括.Net和Javascript)。觉得这么设置没必要,徒增麻烦。

  8、JQuery(1.4.2)的show函数也有个bug,要是你对a/span等默认为inline的设成display:block,用show()函数时,这些元素样式又会变成inline。

  9、惊天发现:Ajax请求不能跨域。妄图跨域请求的话,就IE还弹个框让用户确认,其它浏览器直接干掉。能跨域的那原来不是Ajax请求,而是一个script对象,功能也有限制。

  10、Asp.Net项目中的Designer.cs其实在编译时一点用处没有,就是在写代码时提示用。不喜欢用控件的可以直接删掉这些累赘。

  11、ConfigrationSection的用法,和当年Ado.Net一样,学一遍忘一遍,这次终于不看示例能写对了。

  12、XmlReader读完一个stream,默认stream不关闭。一般情况下,一个流只会被一个XmlReader读,所以应该读完就关闭流。默认的工厂方法Create还应该忽略空白和评论。

  13、还是XmlReader,突然感到检查当前节点名语句很麻烦,早该用扩展方法整合下,代码一下子清爽多了。

  14、自定义的WebControl在设计状态往往显示不出来,但只要发现WebControl类有个DesignMode属性就好办了。回过头来大体看了下老郑的《庖丁解牛》,很牛,但MS这套控件系统更牛。

  15、HttpContext对象有个User属性,原来Windows身份验证就这么实现。

  16、Response输出图像时,IE挺机灵,不用指定ContextType就能识别,Firefox不指定就成了乱码。

  17、自己也会了玩防盗链,也学会了防防盗链。

  18、两数据库间同步数据,数据量不太大的话,DataAdapter最好用,一个Update搞定。

  19、Response.Redirect(url)之后,后面代码神奇地死里逃生,咸鱼翻身,具体原因调查中……

  

原文地址:https://www.cnblogs.com/XmNotes/p/1751286.html