您现在的位置: 圆点视线 >> 教程 >> 网页设计 >> DIV+CSS专栏 >> 文章正文
CSS中的行为——HTC           ★★★
CSS中的行为——HTC
作者:greengnn  文章来源:greengnn  点击数:  更新时间:2007-12-26 18:18:29 
 页面功能:【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口 【字体:
最近对这些CSS中的行为有点兴趣,看了些文档作了个表单鼠标滑过效果。当然HTC的用途,大家最喜欢的要数自制组建,自定义标签了。
Quote
说明:
HTC是HTML component的缩写,
是IE5.0的主要扩展之一,
除了具备一般组件的可重用优点之外,
还具有易于开发使用等优点,
因为需要引入外部文件,这里就不举例了,宝库里有例子.

控件和组件
HTC提供了一个简单机制以在脚本中实现DHTML行为。一个HTC文件和HTML文件没有任何差别,并且以“.htc”为后缀。
关于demo,我看到一些表单的输入框,有鼠标滑过效果,或者背景变色或者边框变色。使用:hover很容易实现,可惜MS IE7以前的浏览器不能支持,那么就单独给IE5.+使用HTC定义鼠标行为。其实这个实用JS实现也挺容易,我就想拿HTC练练手。先看看效果?

下面是代码

XHTML结构来自ALA的Prettier Accessible Forms。这里多说一嘴,建议大家以后做表单的时候多采用下面的结构,Strict型xhtml建议
以下是引用片段:
<form>下不可以直接放置表单元素。而用<ol>来组织多个表单也是合理的。<fieldset>
 <legend>Delivery Details</legend>
 <ol>
 <li>
 <label for="name">Name<em>*</em></label>
 <input id="name" />
 </li>
 <li>
 <label for="address1">Address<em>*</em></label>
 <input id="address1" />
 </li>
 <li>
 <label for="address2">Address 2</label>
 <input id="address2" />
 </li>
 <li>
 <label for="town-city">Town/City</label>
 <input id="town-city" />
 </li>
 <li>
 <label for="county">County<em>*</em></label>
 <input id="county" />
 </li>
 <li>
 <label for="postcode">Postcode<em>*</em></label>
 <input id="postcode" />
 </li>
 <li>
 <fieldset>
 <legend>Is this address also your invoice »
address?<em>*</em></legend>
 <label><input type="radio" »
name="invoice-address" /> Yes</label>
 <label><input type="radio" »
name="invoice-address" /> No</label>
 </fieldset>
 </li>
 </ol>
</fieldset>
HTC:input.htc<PUBLIC:COMPONENT>
<PUBLIC:ATTACH EVENT="onmouseover" ONEVENT="Hilite()" />
<PUBLIC:ATTACH EVENT="onmouseout" ONEVENT="Restore()" />
<SCRIPT LANGUAGE="JScript">
<!--
 function Hilite()
 {
 // save original values
 element.style.border = "1px #f60 solid";
 element.style.background = "#f5f5f5";
 }

 function Restore()
 {
 // restore original values
 element.style.border = "1px #ccc solid"; 
 element.style.background = "#fff";
 }
-->
</SCRIPT>
</PUBLIC:COMPONENT>

CSS

以下是引用片段:
<style type="text/css">
<!--
*{color:#666; font-size:11px;font-family:Arial, Helvetica, sans-serif;}
body{text-align:center;}
  fieldset{border:1px #eee solid; width:310px; margin:0 auto; padding:8px; text-align:left;}
    legend{padding:4px;}
    fieldset label{float:left; width:70px; text-align:right;padding:0 10px;}
    fieldset ol{list-style:none; margin:0; padding:0;}
    fieldset ol li{clear:both; line-height:20px;}
    fieldset ol li fieldset{width:280px;}
    input{behavior:url(input.htc); border:1px #ccc solid; background:#fff; width:160px;}/*Only for ie 5.0+*/
    label input{width:14px;height:14px;border:0;} /*For input type is Radio*/
    input:hover{border:1px #f60 solid;background:#f5f5f5;}/*For orther browsers*/
    em{color:#ff0000;}
-->
</style>
 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 文章录入:Rainsion    责任编辑:Rainsion  【字体:
 
  • 上一篇文章:

  •  
  • 下一篇文章: 没有了
  • 最新文章
    相关文章
    纯CSS制作的新闻网站中的文章列表
    学习CSS制作网页总结的一些经验
    CSS样式表定义标签li前面样式
    玩转Dreamweaver 8:了解CSS层叠样式表
    Dreamweaver 入门:使用CSS设置页面格式
    网页制作入门教程:关于css样式表
    解决Deamweaver8中CSS应用无效问题
    分享:CSS使用技巧20则
    用css制作星级评分
    调整CSS类型的顺序改变链接状态
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
     姓  名: 评 分: 1分 2分 3分 4分 5分
     评论内容: ·严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
    ·用户需对自己在使用本网服务过程中的行为承担法律责任
    ·本站管理员有权保留或删除评论内容。
    ·评论内容只代表机友个人观点,与本网站立场无关。
     
    最 新 推 荐
     
    百度主题推广
    最 新 热 门