.bottom-box{
margin -top:30px
}
我设置了margin-top属性,我的上边距应该距离父元素为30px
可是结果如何呢?结果并不是class为bottom-box的div上边距离父元素30px而是距离body元素30px
什么原因呢?
当个子元素设置margin-top属性时,如何父元素没有设置padding属性,即padding属性为0,那么会出现以上这个情况。
再来看一个实例:
http://www.manongjc.com/article/1263.html
其在IE6和IE7下显示效果为
margin:20px只有margin-bottom失效了。
解决办法:只要在浮动的最后一个元素后面加上“
.float_div{float:leftmargin:20pxwidth:100pxheight:100pxdisplay:inlinebackground-color:#CCC}
.clear{clear:both}
还有个简单点的解决方法:
IE6/7下margin-bottom无效一般出现在容器里某元素设置后在父容器内无效,这个时候只需要在父容器中加入以下两句css,基本上所有的浏览器都兼容了:
overflow:hiddenzoom:100%
这个方法不用添加额外的标签,也是很好的解决办法!
什么时候会跳过preflightrequest
Stored:存储
Reflected:反射性
DOM-based:未连接服务器
例子:
XSS防御:
标签白名单
转义(HTML + JavaScript)
禁止动态修改 CSS 资源引用
特殊协议(dataURI)
减少/避免一些 DOM 操作
CSP: 只允许从我认可的地方加载资源
验证码
Referer:请求头从哪个网站来的(HTTP Referer是header的一部分,当浏览器向web 服务器 发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器基此可以获得一些信息用于处理。)
Anti CSRF Token:
尽量用 POST
DNS 劫持:
本地 host
设备(路由器/交换机)
DNS 服务器
HTTP劫持:
Man-in-the-middle attack(MITA)
防御 HTTP 劫持:
CSP
SRI
HTTPS
Browser:支持的 TLS 版本 + 加密套件,一个随机数1
Server:选择 TLS 版本 + 加密套件,一个随机数2,[session id]
[Server:证书(public key)]
[Server:ServerKeyExchange]
Server:over
Browser:验证证书,用证书中的 public key 加密新的随机数3,生成 PreMasterSecret
Browser + Server:使用 随机数1 + 随机数2 + PreMasterSecret,计算出 master secret,此后,所有信息都会用 master secret 加密
Browser:之前几步,涉及信息的 HASH + MAC,server 验证
Server:重复 browser 刚刚做的
1、下载FileTypesMan,百度即可找到,只有60多K2、解压运行FileTypesMan.exe,程序会花一点时间查找所有的文件格式,稍等一下即可
3、在列表中找到.css,双击进入到“编辑文件类型”界面
4、在MIME类型那里,修改为text/css
5、点确定,大功告成~