方法:給按鈕元素添加“pointer-events:none;”樣式來讓按鈕元素永遠不會成為鼠標事件的target,讓其點擊事件失效,即可控制按鈕不可用。
本教程操作環(huán)境:windows7系統(tǒng)、css3&&html5版、Dell G3電腦。
(學習視頻分享:css視頻教程)
在HTML中我們可以直接通過HTML的disabled或readonly屬性實現(xiàn)按鈕不可點擊;而在css中,可以使用pointer-events屬性實現(xiàn)點擊事件失效。
我們可以為按鈕添加“pointer-events:none”兩種css樣式實現(xiàn)按鈕不可點擊。
pointer-events屬性除了指示該元素不是鼠標事件的目標之外,值none表示鼠標事件“穿透”該元素并且指定該元素“下面”的任何東西。實現(xiàn)按鈕上的點擊事件失效。
示例:CSS讓按鈕不可用
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> button { opacity: 0.5; /*設置蒙版效果*/ pointer-events: none; /*禁止鼠標事件*/ } </style> </head> <body> <button>php中文網(wǎng)</button> </body> </html>
說明:
設置pointer-events:none樣式的元素永遠不會成為鼠標事件的target。但是,當其后代元素的pointer-events屬性指定其他值時,鼠標事件可以指向后代元素,在這種情況下,鼠標事件將在捕獲或冒泡階段觸發(fā)父元素的事件偵聽器。
使用pointer-events來阻止元素成為鼠標事件目標不一定意味著元素上的事件偵聽器永不會觸發(fā)。如果元素后代明確指定了pointer-events屬性并允許其成為鼠標事件的目標,那么指向該元素的任何事件在事件傳播過程中都將通過父元素,并以適當?shù)姆绞接|發(fā)其上的事件偵聽器。當然位于屏幕上在父元素上但不在后代元素上的鼠標活動都不會被父元素和后代元素捕獲(將會穿過父元素而指向位于其下面的元素)。