博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js 片段 - 控制类型为 text 的 input 类型
阅读量:6910 次
发布时间:2019-06-27

本文共 2232 字,大约阅读时间需要 7 分钟。

控制 css 的方法

--------------------------------------------------

http://apps.hi.baidu.com/share/detail/22742529

css学习笔记(十七) :css如何控制input中的text和radio

 

在制作表单页面的时候,如果页面有很多表单,我就不愿意单独定义一个input样式 然后每个input text下都去调用这个css(<input type="text" name="textfield" class="" />).我觉得这样每个input引用css的做法不理想,而且也太麻烦了.我习惯定义一个总的input样式。如input { border:1px solid #f00} ,这样为所有的input定义了一个红色边框。这样就必须在radio调用一个无红色边框的css 如:.radio { border:none} 把radio的红色边框去掉.但这样radio的外观就和默认情况下的相比不美观了很多。我在做网站的时候就碰到这样的问题,如图:

没有定义input,默认的情况下:

定义了input全局样式的情况下 radio的外观就难看了许多:

那如何用css控制input中的text和radio呢?我找到了两个解决办法,还是以示例来说明:
方法一:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>css如何控制input中的text和radio</title>
<style type="text/css">
<!--
input{behavior:url(text.htc)}
-->
</style>
</head>
<body>
<input type="text" name="textfield" />
<input type="radio" name="radiobutton" value="radiobutton" />
</body>
</html>
就是在css中调用了text.htc文件。何谓htc文件?htc的全称就是Html Components,由微软在IE5.0后开始提供的一种新的指令组合,它是一个JavaScript的代码文件,主要把JavaScript代码封装 起来。所以htc文件只在IE下有效。
在text.htc文件中写入代码:
<public:component>  
<public:attach   event="oncontentready"   onevent="init()"   />  
<public:attach   event="ondetach"   onevent="on_deatch()"   />  
<script>  
function init()  
{  
if(element.type=="text")  
{  
element.style.border="1px solid #f00"  
}  
}  
</script>  
</public:component>
ps:此方法的一个bug是在firefox下不支持。而且据说用htc比较占资源。所以不推荐使用。
方法二:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>css如何控制input中的text和radio</title>
</head>
<body>
<input type="text" name="textfield" />
<input type="radio" name="radiobutton" value="radiobutton" />
</body>
</html>
<script language="javascript" type="text/javascript">
var obj = document.getElementsByTagName("input");
for (var i=0; i<obj.length; i++)
{
    if (obj[i].type=="text"){obj[i].style.border="1px solid #f00" }
}
</script>
ps:就是在页面最下面加上这端JS代码。这个方法比较实用,也可以推荐使用,特别感谢可乐用JS的办法来解决这个问题
示例显示:

来自:

转载地址:http://jogdl.baihongyu.com/

你可能感兴趣的文章
如何让网站能更容易浏览和被检索
查看>>
组策略USB解锁
查看>>
利用Zabbix监控mysql主从
查看>>
Oracle 备份与恢复学习笔记(10)
查看>>
Variant 与 内存泄露
查看>>
百度贴吧爬虫node+vue
查看>>
@@IDENTITY,IDENT_CURRENT,SCOPE_IDENTITY,IDENT_INCR,IDENT_SEED详解
查看>>
ntdsutil.exe使用详解
查看>>
成功开发iPhone软件的10个步骤
查看>>
FastDFS和Nginx实现分布式文件服务器
查看>>
Keepalived 高可用
查看>>
Excel动态图表应用
查看>>
.NET简谈自定义事务资源管理器
查看>>
Linux-HA开源软件Heartbeat(安装篇)
查看>>
cocos2d-x游戏例子01:是男人就坚持20秒(WIN32)
查看>>
svn 备份脚本(包含mysql数据库)
查看>>
进一步理解VC中的句柄
查看>>
日志聚合与关联分析技术实例视频演示
查看>>
类的const和非const成员函数的重载
查看>>
[RHEL5企业级Linux服务攻略]--第9季 Squid服务全攻略之常规配置
查看>>