HTML5随记
1、浏览器加载HTML的过程是从上至下,因此引用的第三方js文件一定要放到自己定义的js文件的前面,否则引入的js文件将会在加载时失效。
2、html的全局属性包括:accesskey、contenteditable、dir、hidden、tabindex、class、id、style
3、css属性:background-color元素背景色,color元素前景色
4、css尺寸:绝对长度和相对长度。其中相对长度有em、ex、px、rem、%,其中em是与字号挂钩的相对单位,1em表示1个字体高度。1ex大约等于0.5em
5、javascript中的undefined和null的区别:undefined是没有定义该变量,null是定义了该变量但是无值。做判空处理的时候,两者都要做判断,或者直接使用逻辑!运算符。
//下面两种方式都可以 if (city.name==null || city.name==undefined) {} if(!city.name){}
6、HTML元素一共可分为下面几大类:文档和元数据元素、文本元素、内容分组元素、页面分组元素、制表元素、表单元素、内容嵌入元素。
文档和元数据元素:DOCTYPE、html、head、body、base、link、mata、script、noscript、style、title
文本元素:a、abbr、b、br、cite、code、del、dfn、em、i、ins、kbd、mark、q、rp、rt、ruby、s、samp、small、span、strong、sub、sup、time、u、var、wbr
内容分组元素:blockquote、dd、div、dl、dt、figcaption、figure、hr、li、ol、ul、p、pre、
页面分组元素:address、article、aside、details、footer、h1~h6、header、hgroup、nav、section、sumary
制表元素:caption、col、colgroup、table、tbody、tfoot、th、td、tr、thead、
表单元素:button、datalist、fieldset、form、input、keygen、label、legend、optgroup、option、output、select、textarea
内容嵌入元素:area、audio、canvas、embed、iframe、、img、map、meter、object、param、progress、source、svg、track、video
7、js中数组和对象的关系
//js中数组就是对象,可以在数组中定义属性,但是其数据并不存在数组结构中 var city={}; city.name="shanghai"; console.log(city["name"]);//shanghai console.log(city.name);//shanghai var person=[]; person.name="zhangsan"; console.log(person["name"]);//zhangsan console.log(person.name);//zhangsan console.log(person[0]);//undefined //未索引到数据,说明上面定义的“zhangsan”并不存在数组结构中 person.push("lisi");//向数组中添加数据 console.log(person[0]);//lisi console.log(person[1]);//undefined console.log(person["name"]);//zhangsan //进一步证实上面的结论
通过上面的代码可以证实,js中索引数组结构中的数组只能通过位置索引,并不存在说是通过名称索引。而通过名称索引的数据,其实是数组对象中定义的属性值。
8、解决表格中文字显示过长的问题
css样式:
table { table-layout: fixed;!important } tr td { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
html:
<td title="xxxxxxxxxxxxx">xxxxxxxxxxxxx</td>
效果:
9、js中计算中文文字长度,或者中英文混合长度
var jmz = {}; jmz.GetLength = function(str) { return str.replace(/[\u0391-\uFFE5]/g,"aa").length; //先把中文替换成两个字节的英文,在计算长度 };