当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS的expression判断表达式设置input样式

CSS样式表
css 简单区别ie6,ie7,firefox的写法
解决在IE6下文字溢出(多出一行字)的解决方法小结
纯css 鼠标移上查看大图的效果
css 完美清除浮动的两种解决方案
css 透明度的设置兼容所有浏览器
pre 自动换行的问题
CSS 图片定位的几种方式
div+css学习笔记(IE与fox好多不兼容的问题)
让你的页面对 IE6 显示出黑白色(多浏览器)
li 自适应宽度
样式表达式实现交替显示table行颜色
css 控制图片大小 小于固定值 控制大小
CSS 各种滤镜代码解释 用法案例
针对firefox ie6 ie7 ie8的css样式hack
CSS 样式 层裁剪图片
十个非常实用的CSS属性(IE不支持)
CSS渲染速度改善的十个方法与建议
css z-index 最大值
css z-index 在IE中的迷惑
IE与Firefox中兼容的html设计中使用CSS改变鼠标为手形

CSS样式表 中的 CSS的expression判断表达式设置input样式


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 134 ::
收藏到网摘: n/a

  用CSS的expression判断表达式设置input样式,简单,轻量级。缺点在于expression判断表达式FireFox是不支持的。致命的是只能区分出一个(例如例子中就只能区分出text文本框),不要试图设置多个…

  代码:

<!doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>www.52CSS.com</title>
    <meta name="Author" content="JustinYoung"/>
    <meta name="Keywords" content=""/>
    <meta name="Description" content=""/>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <style type="text/css">
    input
    {
    background-color:expression(this.type=="text"?'#FFC':'');
    }
    </style>
</head>

<body>
<dl>
<dt>This is normal textbox:<dd><input type="text" name="">
<dt>This is normal button:<dd><input type="button" value="i'm button">
</dl>
</body>
</html>

  另一种方法:

input{
    zoom: expression(function(ele){(ele.className)?ele.className+=" "+ele.type:ele.className=ele.type; ele.style.zoom = "1";}(this));
}

  1、将 input 的属性取出来,赋给 className。
  2、对于 expression,这里使用一个无关紧要的属性(此处是zoom)来触发,处理完需要做的事情之后,再将此属性覆盖掉以解决 expression 不断执行的效率问题。

  代码:

<!--[if lt IE 7]>

<style type="text/css" media="screen">
input{ 
zoom: expression(function(ele){(ele.className)?ele.className+=" "+ele.type:ele.className=ele.type; ele.style.zoom = "1";}(this));
}
input.text{
border: 1px solid; border-color: #CCC #EEE #EEE #CCC;
background: #F5F5F5;
}
input.password{
border: 1px solid; border-color: #CCC #EEE #EEE #CCC;
color: #000; background: #F5F5F5;
width: 50px;
}
input.button{
border: 1px solid; border-color: #EEE #CCC #CCC #EEE;
color: #000; font-weight: bold; background: #F5F5F5;
}
input.reset{
border: 1px solid; border-color: #EEE #CCC #CCC #EEE;
color: #666; background: #F5F5F5;
}
</style>
<![endif]-->

<style type="text/css" media="all">
input[type="text"]{
border: 1px solid; border-color: #CCC #EEE #EEE #CCC;
background: #F5F5F5;
}
input[type="password"]{
border: 1px solid; border-color: #CCC #EEE #EEE #CCC;
color: #000; background: #F5F5F5;
width: 50px;
}
input[type="button"]{
border: 1px solid; border-color: #EEE #CCC #CCC #EEE;
color: #000; font-weight: bold; background: #F5F5F5;
}
input[type="reset"]{
border: 1px solid; border-color: #EEE #CCC #CCC #EEE;
color: #666; background: #F5F5F5;
}
</style>
</head>
<body>
<input type="text" name="xx" />
<input type="password" name="yy" />
<input type="checkbox" name="oo" />
<input type="radio" name="pp" />
<input type="button" name="qq" value="button" />
<input type="reset" name="oo" value="reset" />
</body>
</html>