2009年08月26日 - 3:00 下午
分类为 Xhtml+CSS | 2 comments
IE特有注释格式:
<!–[if *condition IE *version]>contend<![endif]–>
*condition 值说明:
gt: greater than,选择条件版本以上版本,不包含条件版本
lt: less than,选择条件版本以下版本,不包含条件版本
gte: greater than or equal,选择条件版本以上版本,包含条件版本
lte : less than or equal,选择条件版本以下版本,包含条件版本
<!–[if !IE]><!–> 除IE外都可识别 <!–<![endif]–>
<!–[if IE]> 所有的IE可识别 <![endif]–>
<!–[if IE 5.0]> 只有IE5.0可以识别 <![endif]–>
<!–[if IE 5]> 仅IE5.0与IE5.5可以识别 <![endif]–>
<!–[if gt IE 5.0]> IE5.0以及IE5.0以上版本都可以识别 <![endif]–>
<!–[if IE 6]> 仅IE6可识别 <![endif]–>
<!–[if lt IE 6]> IE6以及IE6以下版本可识别 <![endif]–>
<!–[if gte IE 6]> IE6以及IE6以上版本可识别 <![endif]–>
<!–[if IE 7]> 仅IE7可识别 <![endif]–>
<!–[if lt IE 7]> IE7以及IE7以下版本可识别 <![endif]–>
<!–[if gte IE 7]> IE7以及IE7以上版本可识别 <![endif]–>
做前台开发时肯定会遇到使用button,a标签的时候,每次点击相关这些标签的时候,我们会经常看到有一个虚线框出现,从视觉效果来看,有虚线框会很刺眼,形象到用户浏览的视觉中心,所以我们有必要将这个刺眼的虚线框去掉。利用google和百度,整理一下相关的方法,方便以后开发当中使用。
方法一:使用css方法
a {blr:expression(this.onFocus=this.blur())} /*for IE*/
a {outline:}/*for FireFox*/
IE浏览器下面还可以使用IE下的私有的html属性:hideFoucs,在标签的结构中加入hidefocus=”true”属性。即:
<a href="http://www.g.cn" hidefocus="true" title="谷歌">谷歌</a>
方法二:使用javascript方法:
通过javascript遍历页面Dom
window.onload=function()
{
for(var i=0; ii<document.links.length; ii++)
document.links$[$ii$]$.onfocus=function(){this.blur()}
}
[...]
2009年07月7日 - 2:37 下午
分类为 JavaScript | 没有评论
使用js操作css属性和css中的写法不同:
1、对于没有中划线的css属性一般直接使用style.属性名即可;
如:obj.style.margin,obj.style.width,obj.style.left,obj.style.position等。
2、对于含有中划线的css属性,将每个中划线去掉并将每个中划线后的第一个字符换成大写即可;
如:obj.style.marginTop,obj.style.borderLeftWidth,obj.style.zIndex,obj.style.fontFamily等。
这个规律我想大多数的前端开发者也都熟知。对在css中有一个特殊的属性其js使用方法确比较特殊。
因为 float 是javascript的保留字,那怎么在js中书写样式表中的 float 呢?
我们不能直接使用obj.style.float来使用,这样操作是无效的。
其正确的使用方法是为:IE:obj.style.styleFloat,其他浏览器Mozilla(gecko),ff等用 styleFloat:obj.style.cssFloat。
给个例子让大家好理解:
<div onclick="alert(this.style.float);this.style.float=’left’;alert(this.style.float);">测试1</div>
<div onclick="alert(this.style.float);if(this.style.cssFloat) {this.style.cssFloat=’left’;}else{this.style.styleFloat=’left’;}alert(this.style.float);"& gt;测试2</div>
2009年07月7日 - 2:32 下午
分类为 JavaScript | 没有评论
最近在做华为项目的时候,遇到一个要求能够自适应到从800×600到1280×1024之间多个分辨率的显示效果的要求,这个CSS估计只能做到一部分了,肯定需要Javascript配合来动态修改相关的CSS属性,所以上网查找了一下相关屏幕信息的一些对象,记录一下。
网页可见区域宽:document.body.clientWidth
网页可见区域高:document.body.clientHeight
网页可见区域宽:document.body.offsetWidth (包括边线和滚动条的宽)
网页可见区域高:document.body.offsetHeight(包括边线的宽)
网页正文全文宽:document.body.scrollWidth
网页正文全文高:document.body.scrollHeight
网页被卷去的高:document.body.scrollTop
网页被卷去的左:document.body.scrollLeft
如果是框架网页,取得框架的对应方法是document.documentElement.XXX
网页正文部分上:window.screenTop
网页正文部分左:window.screenLeft
屏幕分辨率的高:window.screen.height
屏幕分辨率的宽:window.screen.width
屏幕可用工作区高度:window.screen.availHeight
屏幕可用工作区宽度:window.screen.availWidth
屏幕设置是:window.screen.colorDepth(位彩色)
屏幕设置:window.screen.deviceXDPI(像素/英寸)
2009年06月12日 - 11:39 上午
分类为 Xhtml+CSS | 没有评论
来源:http://www.dangbao.net/article/data/cssbug.htm
平时开发的时候经常会遇到一些Bug,做个整理和收集
CSS的优先权:style优先级大于id,id的优先级大于class。
FF下水平居中:margin-left:auto;margin-right:auto。
网页编码为UTF-8,页面注释最好用英文。
一个容器内有两个以上浮动元素注释时,容易引起IE BUG(莫名出现结尾字符)。解决方法:删除注释。
浮动+margin在IE6下出现双倍边距,display:inline消除。
IE6不支持除A标签以外的伪类。
IE下容器边框有断裂的地方,容器加上宽度或者zoom:1即可。
IE6捉迷藏bug:预览页面的内容不会出现。全选后出现。给藏起来的容器使用宽度和高度,或者设置line-height即可。
line-height和height的高度相同时,不同的字体显示是居中效果也不同。
list-style-image无法准确定位,建议使用li的背景来实现。
用vertical-align:middle来对齐文本与文本输入框。
禁用文本框中文输入法的通用方法:ime-mode:disabled。