首页 web前端 html教程 被遗忘掉的button标签_HTML/Xhtml_网页制作

被遗忘掉的button标签_HTML/Xhtml_网页制作

May 16, 2016 pm 04:45 PM
动作 可以 我们 按钮 标签

注:这篇文章已经有人翻译过重新认识button 标签,但是感觉其中有很多地方值得推敲,不太好理解。因此本人结合个人学习体会重新翻译而成此文。
英文原文:http://particletree.com/features/rediscovering-the-button-element/
对于每个程序设计者来说,为用户提供一个风格统一的界面是一项不变的要求。但是在网页上实现这种风格统一却显得格外困难,因为不同操作系统、不同浏览器对网页内容的表现方式存在着差异,而且这种差异几乎毫无规律性。在处理表单元素过程中这个问题显得格外突出,其中,让很多人束手无策的就是“Submit”按钮表现标准统一化的问题。
比如说,属性为type="submit"的input标签在不同的浏览器中要么显得非常丑陋(在Firefox中),要么就是存在这样那样的缺陷(在Internet Explorer),甚至表现得十分死板(在Safari中)。应对这个问题的解决办法通常是通过设置input的属性为image然后自己动手设计一个按钮图片出来。但我们却因此而不得不在每次需要使用按钮时增加大量额外烦人的工作。因此,我们需要一个更好的解决办法,一个对设计者来说更具灵活性、更有意义的方法。幸运的是,这种方法实际中已经存在,需要的是我们再做一点点工作。朋友们,现在请允许向大家介绍我们这位可爱的小盆友
他们表现样式如下:

这些按钮和我们上面创建的按钮在运行和表现行为中没有任何区别。除了用他们来提交表单为,你还可以设置他们为不可用,添加快捷键或者设定一个tabindex等。还好,除了表现样式不同外,Safari都支持这些功能(和input的按钮相比,Safari中button按钮缺少表面的液态效果)。
他们在浏览器的外观如下:

还不错哦。实际上,根据W3C的定义,


Change Password



Cancel


这样做的目的是因为在网页应用程序中很多动作都是事件(REST)驱动的,因此通过一个特定的URL发送用户请求可以把这些动作初始化。使用在两种元素上都可以应用的样式,使我们在维持Ajax和标准提交按钮引起的交互时的样式统一手段更加灵活。
现在你可能会问,为什么我要把图像元素的alt属性留成空白呢?alt是img元素的必要属性,它用于解释图像的内容,而这里却没有图像的相关说明,这的确有点费解。不过,与“缺少”属性不同,属性值“为空”是完全符合标准的,他告诉浏览器这些图像代表了一些完全可以忽略的信息,这也使浏览者不用因为提示信息的遮挡而找不到下一个按钮。由于此处的图标完全是多余的,因此我们宁愿不去浪费用户的时间去查看这个完全是为了实现界面风格统一而使用的图标。
CSS样式表
用于控制这些按钮样式的CSS大部分内容都很直观,不同浏览器中的稍许差别,就会导致我们下面的代码中要分别为他们应用不同的padding值,还好,这一切都是完全可以实现的。
/* BUTTONS */
.buttons a, .buttons button{
display:block;
float:left;
margin:0 7px 0 0;
background-color:#f5f5f5;
border:1px solid #dedede;
border-top:1px solid #eee;
border-left:1px solid #eee;
font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
font-size:100%;
line-height:130%;
text-decoration:none;
font-weight:bold;
color:#565656;
cursor:pointer;
padding:5px 10px 6px 7px; /* Links */
}
.buttons button{
width:auto;
overflow:visible;
padding:4px 10px 3px 7px; /* IE6 */
}
.buttons button[type]{
padding:5px 10px 5px 7px; /* Firefox */
line-height:17px; /* Safari */
}
*:first-child html button[type]{
padding:4px 10px 3px 7px; /* IE7 */
}
.buttons button img, .buttons a img{
margin:0 3px -3px 0 !important;
padding:0;
border:none;
width:16px;
height:16px;
}
还有一个问题就是,Internet Explorer在呈现长按钮时存在一些bug。有关这方面的信息你可以在Jehiah.cz上找到,不过在上面的CSS代码中我们通过声明width和overflow的值会在一定程度上避免问题的出现。
为按钮添加一点色彩
在Wufoo中,我们为中性动作(这里,作者把change password一类的动作叫作中性动作,把“确定”、“提交”一类的动作叫作正向动作,而把“放弃”、“取消”一类的动作叫作负向动作)的hover值设为蓝色,而把正向动作和负向动作分别设为绿色和红色。下面的样式代码中就是我们用不同的颜色区分“添加”、“保存”一类的正向动作和“取消”、“删除”一类的负向动作的。感觉还不错,当然你也可以选择你喜欢的他颜色来使用。
/* STANDARD */
button:hover, .buttons a:hover{
background-color:#dff4ff;
border:1px solid #c2e1ef;
color:#336699;
}
.buttons a:active{
background-color:#6299c5;
border:1px solid #6299c5;
color:#fff;
}
/* POSITIVE */
button.positive, .buttons a.positive{
color:#529214;
}
.buttons a.positive:hover, button.positive:hover{
background-color:#E6EFC2;
border:1px solid #C6D880;
color:#529214;
}
.buttons a.positive:active{
background-color:#529214;
border:1px solid #529214;
color:#fff;
}
/* NEGATIVE */
.buttons a.negative, button.negative{
color:#d12f19;
}
.buttons a.negative:hover, button.negative:hover{
background:#fbe3e4;
border:1px solid #fbc2c4;
color:#d12f19;
}
.buttons a.negative:active{
background-color:#d12f19;
border:1px solid #d12f19;
color:#fff;
}
总结
最后要说的是,这仅仅是我们应对Wufoo中需求而设计的解决方案,不过在我们的努力下它表现还不错。但是这并不是唯一方法,你可以找到更多有趣的办法把按钮变成圆角甚至更加丰富多彩。由于
定义和用法
定义一个按钮。在 button 元素内部,您可以放置内容,比如文本或图像。这是该元素与使用 input 元素创建的按钮之间的不同之处。
标签之间的所有内容都是按钮的内容,其中包括任何可接受的正文内容,比如文本或多媒体内容。例如,我们可以在按钮中包括一个图像和相关的文本,用它们在按钮中创建一个吸引人的标记图像。
唯一禁止使用的元素是图像映射,因为它对鼠标和键盘敏感的动作会干扰表单按钮的行为。
可选择的属性
属性值描述DTD
disabled disabled 禁用此按钮。 STF
namebutton_name 规定此按钮的唯一名称。 STF
type* button
* reset定义按钮的类型。 STF
* submit
value some_value 规定按钮的初始值。此值可被脚本修改。 STF
标准属性:
id, class, title, style, dir, lang, xml:lang, accesskey, tabindex
事件属性:
onfocus, onblur, onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

仓库:如何复兴队友
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

在 Windows 中禁用传递优化服务的 5 种方法 在 Windows 中禁用传递优化服务的 5 种方法 May 17, 2023 am 09:31 AM

许多原因可能使你想要禁用传递优化服务在你的Windows电脑上。但是,我们的读者抱怨不知道要遵循的正确步骤。本指南将通过几个步骤讨论禁用传递优化服务的方法。要了解有关服务的更多信息,您可能需要查看我们的如何打开services.msc指南以获取更多信息。传递优化服务有什么作用?传递优化服务是具有云托管解决方案的HTTP下载程序。它允许Windows设备从备用来源下载Windows更新、升级、应用程序和其他大型包文件。此外,它还通过允许部署中的多个设备下载这些包来帮助减少带宽消耗。此外,Windo

如何重启、强制重启和关闭 iPad Mini 6 如何重启、强制重启和关闭 iPad Mini 6 Apr 29, 2023 pm 12:19 PM

如何强制重启iPadMini6强制重启iPadMini6是通过一系列按钮按下来完成的,它的工作原理如下:按下并释放音量调高按下并释放降低音量按住电源/锁定按钮,直到您在屏幕上看到Apple标志,表明iPadMini已强制重启仅此而已,您已经强制重启了iPadMini6!强制重启通常用于故障排除原因,例如iPadMini被冻结、应用程序被冻结或发生其他一些一般性不当行为。关于强制重启第6代iPadMini的程序需要注意的一点是,对于所有其他具有超薄边框并使用

重写后:

如何解决 PS5 控制器在 Windows 11 上未被识别的问题 重写后: 如何解决 PS5 控制器在 Windows 11 上未被识别的问题 May 09, 2023 pm 10:16 PM

关于连接我的PS5控制器,我应该知道什么?与DualSense控制器一样好,有报告称控制器未连接或未被检测到。解决此问题的最简单方法是使用适当的USB电缆将控制器连接到您的PC。有些游戏本身就支持DualSense。在这些情况下,您只需插入控制器即可。但这引发了其他问题,例如如果您没有USB电缆或不想使用USB电缆怎么办

如何使用Vue实现按钮倒计时特效 如何使用Vue实现按钮倒计时特效 Sep 21, 2023 pm 02:03 PM

如何使用Vue实现按钮倒计时特效随着Web应用程序的日益普及,我们经常需要在用户与页面进行交互时使用一些动态效果来提升用户体验。其中,按钮的倒计时特效是非常常见且实用的一种效果。本文将介绍如何使用Vue框架来实现按钮倒计时特效,并给出具体的代码示例。首先,我们需要创建一个Vue组件,包含一个按钮和倒计时的功能。在Vue中,组件是一种可复用的Vue实例,视图会

更改 Windows 11 上的电源按钮操作 [5 提示] 更改 Windows 11 上的电源按钮操作 [5 提示] Sep 29, 2023 pm 11:29 PM

电源按钮可以做的不仅仅是关闭PC,尽管这是桌面用户的默认操作。如果您想更改Windows11中的电源按钮操作,它比您想象的要容易!请记住,物理电源按钮与“开始”菜单中的按钮不同,下面的更改不会影响后者的操作。此外,您会发现电源选项略有不同,具体取决于它是台式机还是笔记本电脑。为什么要在Windows11中更改电源按钮操作?如果您让计算机进入睡眠状态的频率高于关闭计算机,则更改硬件电源按钮(即PC上的物理电源按钮)的行为方式即可。同样的想法也适用于休眠模式或简单地关闭显示器。更改Windows11

开放世界新作《望月》全新制作情报公开:48天肝出新世界 开放世界新作《望月》全新制作情报公开:48天肝出新世界 Feb 07, 2024 pm 03:36 PM

诗悦网络旗下的二次元开放世界动作游戏《望月》近日发布了全新制作情报《48天肝出新世界》,介绍了距离上一次发布制作情报的48天理的一系列优化内容,主要还是游戏画面表现上的迭代。其中角色UI界面的展示引发了不少玩家的热议,表示看起来非常眼熟,也许这种多镜头流畅运转的角色展示正在成为新潮流。制作人华韬此前表示,游戏已经制作了两年多,将于2024年第一季度开启首次测试。在昨日官方还发布了一条《“好像在一个惬意的午后”》的预约视频,想必离第一次测试真的不远了。

iOS 17:如何在'信息”中组织iMessage应用程序 iOS 17:如何在'信息”中组织iMessage应用程序 Sep 18, 2023 pm 05:25 PM

在iOS17中,苹果不仅增加了几个新的消息功能,而且还调整了消息应用程序的设计,使其外观更干净。现在,所有iMessage应用程序和工具(如相机和照片选项)都可以通过点击键盘上方和文本输入字段左侧的“+”按钮来访问。点击“+”按钮会弹出一个菜单列,该列具有默认的选项顺序。从顶部开始,有相机,照片,贴纸,现金(如果可用),音频和位置。最底部是一个“更多”按钮,点击该按钮时会显示任何其他已安装的消息应用程序(您也可以向上滑动以显示此隐藏列表)。如何重新组织您的iMessage应用程序您可以通过以下方

为什么我的笔记本电脑在按下电源按钮后无法启动? 为什么我的笔记本电脑在按下电源按钮后无法启动? Mar 10, 2024 am 09:31 AM

您的Windows笔记本电脑无法启动的原因可能有多种。内存故障、电池耗尽、电源按钮故障或硬件问题都是常见原因。下面提供了一些解决方案,帮助您解决这个问题。按下电源按钮后笔记本电脑无法启动如果您的Windows笔记本电脑在按下电源按钮后仍无法启动,您可以采取以下步骤来解决问题:你的笔记本充满电了吗?执行硬重置清理你的笔记本电脑重新拔插内存透明的CMOS型电池带上你的笔记本电脑去修理。1]您的笔记本电脑充满电了吗?首先要做的事情是检查您的笔记本电脑是否已经完全充电。如果电池耗尽,笔记本电脑将无法启动

See all articles