jquery css 取值属性取值和的区别是什么

本节描述属性值的合法取值范围。下面是其取值的几种方法:
CSS关键词(例如auto,red,disc等)CSS基本数据类型,基本类型使用包含在尖括号中的类型名表示(例如&length&、&number&等)取值与其属性取值范围一致的类型,使用包含在尖括号中的带有引号的属性名表示(例如<'border-top-color'&等)取值不同于其属性的类型,使用包含在尖括号中的属性名表示(例如&margin-width&、&border-width&等)
值可以按照下面的方法组织,类似于正则表达式
几个并列的词:并列的词必须全部出现,次序和列出时一样竖线|分割两个或多个选择:其中只有一个出现双竖线||分割两个或多个选择:其中一个或多个出现,次序任意两个与符号&&分割两个或多个选择:必须全部出现的,次序任意方框[ ]用来分组
方框优先于并列,并列优先于两个与符号&&,两个与符号&&优先于双竖线||,双竖线||优先于竖线|。因此,下面两行的含义是一样的:
每个类型,关键词或方框组可以紧跟下列修改项中的一个:
星号*表示前述的类型、词或分组出现0或多次加号+表示前述的类型、词或分组出现一次或多次问号?表示前述的类型、词或分组是可选的以花括号{A,B}分割的表示前述的类型、词或分组至少出现A次,最多出现B次
引用网址:/css/property_value/
猴子提示: 梦之都教程中的CSS属性的取值全部使用本节介绍的方法描述,下面是一些示例
代表&color&与inherit有且只能出现一个
真实的示例见属性
代表[&background-color& || &background-image& || &background-repeat& || &background-attachment& || &background-position&]与inherit有且只能出现一个
真实的示例见属性
代表&background-color&、&background-image&、&background-repeat&、&background-attachment&、&background-position&可以出现一个或多个
代表[ [ &percentage& | &length& | left | center | right ] [ &percentage& | &length& | top | center | bottom ]? ]与[ [ left | center | right ] || [ top | center | bottom ] ]与inherit有且只能出现一个
真实的示例见属性
代表[ &percentage& | &length& | left | center | right ]必须出现,[ &percentage& | &length& | top | center | bottom ]为可选(?代表可选)
真实的示例见属性
代表[ &family-name& | &generic-family& ]必须出现,[, &family-name&| &generic-family&]可以出现0次或多次(*代表出现0次或多次)
真实的示例见属性
代表&border-width&最少出现1次,最多出现4次
真实的示例见属性
13.1.1 CSS属性值的描述语法
教程中有什么不懂的地方?发现教程的错误!对教程有什么建议!快快联系猴子呀,:)jquery 获取属性值IE和火狐的在js和css下的差别 - HTML/CSS当前位置:& &&&jquery 获取属性值IE和火狐的在js和css下的差别jquery 获取属性值IE和火狐的在js和css下的差别&&网友分享于:&&浏览:253次jquery 获取属性值IE和火狐的在js和css上的差别
1. document.form.item 问题(1)现有问题:现有代码中存在许多 document.formName.item("itemName") 这样的语句,不能在Firefox(火狐)下运行(2)解决方法:改用 document.formName.elements["elementName"](3)其它参见 22. 集合类对象问题(1)现有问题:现有代码中许多集合类对象取用时使用 (),IE 能接受,Firefox(火狐)不能。(2)解决方法:改用 [] 作为下标运算。如:document.forms("formName") 改为 document.forms["formName"]。又如:document.getElementsByName("inputName")(1) 改为 document.getElementsByName("inputName")[1](3)其它3. window.event(1)现有问题:使用 window.event 无法在火狐浏览器上运行(2)解决方法:火狐 的 event 只能在事件发生的现场使用,此问题暂无法解决。可以这样变通:原代码(可在IE中运行): &br /&&input type="button" name="someButton" value="提交" onclick="javascript:gotoSubmit()"/&&br /&...&br /&&script language="javascript"&&br /&function gotoSubmit() {&br /&...&br /&alert(window.event); // use window.event&br /&...&br /&}&br /&&/script&新代码(可在IE和火狐中运行): &input type="button" name="someButton" value="提交" onclick="javascript:gotoSubmit(event)"/&&br /&...&br /&&script language="javascript"&&br /&function gotoSubmit(evt) {&br /&evt= evt ? evt : (window.event ? window.event : null);&br /&...&br /&alert(evt); // use evt&br /&...&br /&}&br /&&/script&此外,如果新代码中第一行不改,与老代码一样的话(即 gotoSubmit 调用没有给参数),则仍然只能在IE中运行,但不会出错。所以,这种方案 tpl 部分仍与老代码兼容。4. HTML 对象的 id 作为对象名的问题(1)现有问题在 IE 中,HTML 对象的 ID 可以作为 document 的下属对象变量名直接使用。在火狐中不能。(2)解决方法用 getElementById("idName") 代替 idName 作为对象变量使用。5. 用idName字符串取得对象的问题(1)现有问题在IE中,利用 eval_r(idName) 可以取得 id 为 idName 的 HTML 对象,在火狐中不能。(2)解决方法用 getElementById(idName) 代替 eval_r(idName)。6. 变量名与某 HTML 对象 id 相同的问题(1)现有问题在 火狐 中,因为对象 id 不作为 HTML 对象的名称,所以可以使用与 HTML 对象 id 相同的变量名,IE中能。(2)解决方法在声明变量时,一律加上 var ,以避免歧义,这样在 IE 中亦可正常运行。此外,最好不要取与 HTML 对象 id 相同的变量名,以减少错误。(3)其它参见 问题47. event.x 与 event.y 问题(1)现有问题在IE 中,event 对象有 x, y 属性,火狐中没有。(2)解决方法在火狐中,与event.x 等效的是 event.pageX。但event.pageX IE中没有。故采用 event.clientX 代替 event.x。在IE 中也有这个变量。event.clientX 与 event.pageX 有微妙的差别(当整个页面有滚动条的时候),不过大多数时候是等效的。如果要完全一样,可以稍麻烦些:mX= event.x ? event.x : event.pageX;然后用 mX 代替 event.x(3)其它event.layerX 在IE与火狐中都有,具体意义有无差别尚未试验。8. 关于frame(1)现有问题在 IE中 可以用window.testFrame取得该frame,火狐中不行(2)解决方法在frame的使用方面火狐和ie的最主要的区别是:如果在frame标签中书写了以下属性:&frame src="xx.htm" id="frameId" name="frameName" /&那么ie可以通过id或者name访问这个frame对应的window对象而火狐只可以通过name来访问这个frame对应的window对象例如如果上述frame标签写在最上层的window里面的htm里面,那么可以这样访问ie: window.top.frameId或者window.top.frameName来访问这个window对象火狐: 只能这样window.top.frameName来访问这个window对象另外,在火狐和ie中都可以使用window.top.document.getElementByIdx_x("frameId")来访问frame标签并且可以通过window.top.document.getElementByIdx_x("testFrame").src= 'xx.htm'来切换frame的内容也都可以通过window.top.frameName.location= 'xx.htm'来切换frame的内容关于frame和window的描述可以参见bbs的‘window与frame’文章以及/test/js/test_frame/目录下面的测试----adun 修改9. 在火狐中,自己定义的属性必须getAttribute()取得10.在火狐中没有 parentElement parement.children 而用parentNode parentNode.childNodeschildNodes的下标的含义在IE和火狐中不同,火狐使用DOM规范,childNodes中会插入空白文本节点。一般可以通过node.getElementsByTagName_r()来回避这个问题。当html中节点缺失时,IE和火狐对parentNode的解释不同,例如&form&&table&&input/&&/table&&/form&火狐中input.parentNode的值为form, 而IE中input.parentNode的值为空节点火狐中节点没有removeNode方法,必须使用如下方法 node.parentNode.removeChild(node)11.const 问题(1)现有问题:在 IE 中不能使用 const 关键字。如 const constVar= 32; 在IE中这是语法错误。(2)解决方法:不使用 const ,以 var 代替。12. body 对象火狐的body在body标签没有被浏览器完全读入之前就存在,而IE则必须在body完全被读入之后才存在13. url encoding在js中如果书写url就直接写&不要写&例如var url= 'xx.jsp?objectName=xx&objectEvent=xxx';frm.action= url那么很有可能url不会被正常显示以至于参数没有正确的传到服务器一般会服务器报错参数没有找到当然如果是在tpl中例外,因为tpl中符合xml规范,要求&书写为&一般火狐无法识别js中的&14. nodeName 和 tagName 问题(1)现有问题:在火狐中,所有节点均有 nodeName 值,但 textNode 没有 tagName 值。在 IE 中,nodeName 的使用好象有问题(具体情况没有测试,但我的IE已经死了好几次)。(2)解决方法:使用 tagName,但应检测其是否为空。15. 元素属性IE下 input.type属性为只读,但是火狐下可以修改16. document.getElementsByName() 和 document.all[name] 的问题(1)现有问题:在 IE 中,getElementsByName()、document.all[name] 均不能用来取得 div 元素(是否还有其它不能取的元素还不知道)。17.IE能够使用document.getElementsByID('btn_xx').click(),火狐则不能够接受,要接受可以采用 __doPostBack(btn_xx,'');18.firefox 不能对innerText支持,也不知道为什么。firefox支持innerHTML但却不支持innerText,所以上网查了一下,原来它改支持 textContent来实现innerText,不过实现得没有那么好,默认把多余的空格也保留了。如果不用textContent,如果字符串里面不包含HTML代码也可以用innerHTML代替19.禁止选取网页内容:在IE中一般用js:obj.onselectstart=function(){}而firefox用CSS:-moz-user-select:none20.滤镜的支持(例:透明滤镜):IE:filter:alpha(opacity=10);firefox:-moz-opacity:.10;21.DIV等元素的边界问题:比如:设置一个div的CSS::{width:100height:100border:#}IE中:div的宽度(包括边框宽度):100px,div的高度(包括边框宽度):100px;而firefox:div的宽度(包括边框宽度):102px,div的高度(包括边框宽度):102px;22.在FireFox中,非float的div前面有同一父级的float的div,此div若有背景图,要使用clear:both,才能显示背景图,而IE6.0中不用使用clear:both。23.在[text-decoration:underline]的属性下,IE6.0显示的下划线会比FireFox低一点。在FireFox中,部分笔画会在下划线的下面1个象素左右。24.CSS 兼容要点:DOCTYPE 影响 CSS 处理FF: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行FF: body 设置 text-align 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可居中FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 widthFF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式div 的垂直居中问题: vertical-align: 将行距增加到和整个DIV一样高 line-height:200 然后插入文字,就垂直居中了。缺点是要控制内容不要换行cursor: pointer 可以同时在 IE FF 中显示游标手指状, hand 仅 IE 可以FF: 链接加边框和背景色,需设置 display: block, 同时设置 float: left 保证不换行。参照 menubar, 给 a 和 menubar 设置高度是为了避免底边显示错位, 若不设 height, 可以在 menubar 中插入一个空格
形象的总结一下Firefox 、IE6、IE7三种浏览器的CSS Hack写法:(其中橙色代表FF、蓝色代表IE6、绿色代表IE7)
区别IE6与FF:
background:
*background:
区别IE6与IE7:
background: green !
background:
区别IE7与FF:
Background:
* background:
区别FF,IE7,IE6:
background: *background: green ! *background:
IE都能识别*,标准浏览器(如FF)不能识别*;
IE6能识别*,但不能识别 !important;
IE7能识别*,也能识别 !important;
FF不能识别*,但能识别 !important;
不管是什么方法,书写的顺序都是Firefox的写在前面,IE7写在中间,IE6写在最后面。
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有&nbsp&nbsp&nbsp &nbsp&nbsp&nbsp会员注册
本站不参与评论!()
自觉遵守:爱国、守法、自律、真实、文明的原则
尊重网上道德,遵守中华人民共和国各项有关法律法规
严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的评论
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
您在本站发表的评论,本站有权保留、转载、引用或者删除
参与本评论即表明您已经阅读并接受上述条款

我要回帖

更多关于 css颜色取值器 的文章

 

随机推荐