CSS中的行为——HTC

2016-02-19 17:26 3 1 收藏

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的CSS中的行为——HTC懂设计的网友们快点来了解吧!

【 tulaoshi.com - Web开发 】

最近对这些CSS中的行为有点兴趣,看了些文档作了个表单鼠标滑过效果。当然HTC的用途,大家最喜欢的要数自制组建,自定义标签了。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

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
 legendDelivery Details/legend
 ol
 li
 label for="name"Nameem*/em/label
 input id="name" /
 /li
 li
 label for="address1"Addressem*/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"Countyem*/em/label
 input id="county" /
 /li
 li
 label for="postcode"Postcodeem*/em/label
 input id="postcode" /
 /li
 li
 fieldset
 legendIs this address also your invoice »
address?em*/em/legend
 labelinput type="radio" »
name="invoice-address" / Yes/label
 labelinput type="radio" »
name="invoice-address" / No/label
 /fieldset
 /li
 /ol
/fieldset
HTC:input.htcPUBLIC: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

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

来源:https://www.tulaoshi.com/n/20160219/1615207.html

延伸阅读
标签: Web开发
如何使DIV居中 主要的样式定义如下: body {TEXT-ALIGN: center;} #center { MARGIN-RIGHT: auto; MARGIN-LEFT: auto; } 说明: 首先在父级元素定义TEXT-ALIGN: center;这个的意思就是在父级元素内的内容居中;对于IE这样设定就已经可以了。但在mozilla中不能居中。解决办法就是在子元素定义时候设定时再加上“MARGIN-RIGHT: auto;MARGIN-LE...
标签: Web开发
删除链接上的虚线框 a:active, a:focus {     outline:none; } Firefox 默认会在链接获得焦点(或者点击时)加上条虚线框,使用上面的属性可以删除。 最简单的 CSS 重置 * {    margin: 0; padding: 0 } 不让链接折行 a {     white-space:nowrap; } 上面的设定就能避免链接折行,不过个人建...
    先看一个简单的例子:以下是常见按钮,使用“类”控制字体的按钮是不是漂亮了许多?而没有使用“类”控制的按钮的字体看上去就有点变形?本例使用9pt大小的宋体字控制的。        这是“类”的一个用途。     奥秘是这样的:     先定义一...
标签: Web开发
IE5及其以后版本支持在CSS中使用expression,用来把CSS属性和Javas cript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性。就是说CSS属性后面可以是一段Javas cript表达式,CSS属性的值等于Javas cript表达式计算的结果。 在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象。这个表达式就好...
标签: Web开发
在css样式表中用了中文注释,并且将/*和*/写在与中文同一行的话,可能导致注释下方的样式失效,ie6以下的浏览器包括ie6都可能出现这个问题,但经过测试ie7、firefox、opera等浏览器都能良好支持中文注释,具体原因暂时不确定,但发现了解决方法,有问题的写法是这样的:  /*主内容区域地址栏部分样式*/ 如果改为以下两种写法...

经验教程

84

收藏

75
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部