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

CSS样式表
简单学习CSS网页布局(初学者)
8个简单实用的CSS秘诀
Webjx收集基于CSS JS设计50款优秀的导航菜单
css word-break word-wrap 前台显示自动换行
css 自动换行 强制换行属性 (firefox+ie)
css 教学实例 漂亮的搜索框
CSS 折叠的菜单实现代码
关于html元素的 width属性无效果的解决方法
css 相对定位 绝对定位 浮动 分析
css 滑动门技术的介绍及实例分享
负边距创建自适应宽度的流体布局的实现方法
有利于SEO的DIV+CSS的命名规则小结
css盒子模型 css margin 外边框合并
css 优先级关系
input 文本框 文字垂直居中对齐 ie firefox
css margin-left在IE6下的问题的解决方法
IE8样式不正确显示问题
div中子div在firefox ie 水平居中对齐
css 不兼容性问题小结
CSS 3D立方体制作

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 77 ::
收藏到网摘: 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>