搜尋
首頁web前端html教學被遺忘掉的button標籤_HTML/Xhtml_網頁製作

註:這篇文章已經有人翻譯過重新認識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的定義,


更改密碼

更改密碼



>取消
這樣做的目的是因為在網頁應用程式中很多動作都是事件(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:#f5f5f5f;
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:au 🎜>padding:4px 10px 3px 7px; /* IE6 */
}
.buttons button[type]{
padding:5px 10px 5px 7px;{
padding:5px 10px 5px 7px; 17px; /* Safari */
}
*:first-child html button[type]{
padding:4px 10px 3px 7px; /* IE7 */
}margin:0 3px -3px 0 !important;
padding:0;
border:none;
width:16px;
border:none;
width:16px;
height:16p;}
還有一個問題就是,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;
}
/*
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; 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中需求而設計的解決方案,不過在我們的努力下它表現還不錯。但這並不是唯一方法,你可以找到更多有趣的方法把按鈕變成圓角甚至更加豐富多彩。由於標籤之間幾乎可以放置任何其他元素,因此你也可以透過插入標籤然後按照Alex Griffioen最新提供的方法來創建一個真正好看的圓角立體按鈕。說實話,我希望對於所有為程式的介面重複使用而努力的設計者來說這只是一個開始。不管怎麼說,我希望你能夠在打開Photoshop製作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
HTML中的布爾屬性是什麼?舉一些例子。HTML中的布爾屬性是什麼?舉一些例子。Apr 25, 2025 am 12:01 AM

布爾屬性是HTML中的特殊屬性,不需要值即可激活。 1.布爾屬性通過存在與否控制元素行為,如disabled禁用輸入框。 2.它們的工作原理是瀏覽器解析時根據屬性的存在改變元素行為。 3.基本用法是直接添加屬性,高級用法可通過JavaScript動態控制。 4.常見錯誤是誤以為需要設置值,正確寫法應簡潔。 5.最佳實踐是保持代碼簡潔,合理使用布爾屬性以優化網頁性能和用戶體驗。

如何驗證您的HTML代碼?如何驗證您的HTML代碼?Apr 24, 2025 am 12:04 AM

HTML代碼可以通過在線驗證器、集成工具和自動化流程來確保其清潔度。 1)使用W3CMarkupValidationService在線驗證HTML代碼。 2)在VisualStudioCode中安裝並配置HTMLHint擴展進行實時驗證。 3)利用HTMLTidy在構建流程中自動驗證和清理HTML文件。

HTML與CSS和JavaScript:比較Web技術HTML與CSS和JavaScript:比較Web技術Apr 23, 2025 am 12:05 AM

HTML、CSS和JavaScript是構建現代網頁的核心技術:1.HTML定義網頁結構,2.CSS負責網頁外觀,3.JavaScript提供網頁動態和交互性,它們共同作用,打造出用戶體驗良好的網站。

HTML作為標記語言:其功能和目的HTML作為標記語言:其功能和目的Apr 22, 2025 am 12:02 AM

HTML的功能是定義網頁的結構和內容,其目的在於提供一種標準化的方式來展示信息。 1)HTML通過標籤和屬性組織網頁的各個部分,如標題和段落。 2)它支持內容與表現分離,提升維護效率。 3)HTML具有可擴展性,允許自定義標籤增強SEO。

HTML,CSS和JavaScript的未來:網絡開發趨勢HTML,CSS和JavaScript的未來:網絡開發趨勢Apr 19, 2025 am 12:02 AM

HTML的未來趨勢是語義化和Web組件,CSS的未來趨勢是CSS-in-JS和CSSHoudini,JavaScript的未來趨勢是WebAssembly和Serverless。 1.HTML的語義化提高可訪問性和SEO效果,Web組件提升開發效率但需注意瀏覽器兼容性。 2.CSS-in-JS增強樣式管理靈活性但可能增大文件體積,CSSHoudini允許直接操作CSS渲染。 3.WebAssembly優化瀏覽器應用性能但學習曲線陡,Serverless簡化開發但需優化冷啟動問題。

HTML:結構,CSS:樣式,JavaScript:行為HTML:結構,CSS:樣式,JavaScript:行為Apr 18, 2025 am 12:09 AM

HTML、CSS和JavaScript在Web開發中的作用分別是:1.HTML定義網頁結構,2.CSS控製網頁樣式,3.JavaScript添加動態行為。它們共同構建了現代網站的框架、美觀和交互性。

HTML的未來:網絡設計的發展和趨勢HTML的未來:網絡設計的發展和趨勢Apr 17, 2025 am 12:12 AM

HTML的未來充滿了無限可能。 1)新功能和標準將包括更多的語義化標籤和WebComponents的普及。 2)網頁設計趨勢將繼續向響應式和無障礙設計發展。 3)性能優化將通過響應式圖片加載和延遲加載技術提升用戶體驗。

HTML與CSS vs. JavaScript:比較概述HTML與CSS vs. JavaScript:比較概述Apr 16, 2025 am 12:04 AM

HTML、CSS和JavaScript在網頁開發中的角色分別是:HTML負責內容結構,CSS負責樣式,JavaScript負責動態行為。 1.HTML通過標籤定義網頁結構和內容,確保語義化。 2.CSS通過選擇器和屬性控製網頁樣式,使其美觀易讀。 3.JavaScript通過腳本控製網頁行為,實現動態和交互功能。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。