1.table 的td自动换行可以通过一下样式实现:
<table rules="all" style="table-layout:word-wrap:break-word;word-break:break-all">
word-wrap : normal | break-word---------内容将在边界内换行,如果指定为break-word,词内换行(word-break)也将发生。
word-break : normal | break-all | keep-all
normal : 依照亚洲语言和非亚洲语言的文本规则,允许在字内换行。
break-all : 该行为与亚洲语言的normal相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本。
keep-all : 与所有非亚洲语言的normal相同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本 。
table-layout : auto | fixed
auto : 默认的自动算法。布局将基于各单元格的内容。表格在每一单元格读取计算之后才会显示出来。速度很慢。
fixed : 固定布局的算法。在这算法中,水平布局是仅仅基于表格的宽度,表格边框的宽度,单元格间距,列的宽度,而和表格内容无关。
2.XSS是跨站脚本攻击,是web程序中最常见的漏洞。黑客可以利用这种漏洞在输入信息中嵌入客户端脚本(例如javascript脚本),用户访问这种包含有恶意脚本的程序后有可能会造成cookie信息丢失。
基于安全性考虑,在web开发中一定要对用户输入的信息做严格的验证,处理规则如下:
原则: 不相信客户输入的数据
注意: 攻击代码不一定在<script></script>中
1)将重要的cookie标记为http only, 这样的话Javascript 中的document.cookie语句就不能获取到cookie了.
2)只允许用户输入我们期望的数据。 例如: 年龄的textbox中,只允许用户输入数字。 而数字之外的字符都过滤掉。
3)对数据进行Html Encode 处理
4)过滤或移除特殊的Html标签, 例如: <script>, <iframe> , < for <, > for >, " for
5)过滤JavaScript 事件的标签。例如 "onclick=", "onfocus" 等等。
3.今天遇到一个问题,在注册一个用户信息时,如果用户名中包含空格,传到后台去之后只能拿到第一个空格之前的内容,查了代码之后发现原因是开发者将用户名附在url后面以get的方式传递给后台的,这样参数里面的空格没有经过URL转码,因此后台就只能拿到第一个空格之前的内容,后来将代码修改为利用post表单提交方式传递参数,问题得到解决。
从该问题上就可以看出URL传参和post 提交表单方式的区别,URL传参方式参数是附在url后面传递,参数对用户可见的,安全性低且传递的参数容量较小。而post表单提交方式是将参数封装在http请求头中传递过去的,容量大且比较安全。
4.通信信息传输通道有两种,一种是数据通道,一种是语音通道,发短信,聊qq,wap上网等都走的是数据通道,这种方式不占用资源。只有语音通道是占用资源的。另外,最初联通信号为什么不好呢?是因为联通的通话是基于半双工的,也就是说多个人公用一个通道,这样就有可能发生拥堵或互相干扰,反馈给用户的就是通话质量不好,而移动是全双工的,就是说两个通话的人独立占有一个通道,这样就保证了通话质量。