您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)如何去掉a標(biāo)簽和按鈕加背景圖片虛線/陰影的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來(lái)看看吧。
當(dāng)用戶注冊(cè)都會(huì)點(diǎn)擊一個(gè)a標(biāo)簽更換驗(yàn)證碼。當(dāng)點(diǎn)擊后a標(biāo)簽上有個(gè)陰影部分。對(duì)于喜歡美觀的同學(xué)卻不可容忍!
這是什么原因呢?原來(lái)是a標(biāo)簽的href屬性惹的禍。
1、僅僅是a標(biāo)簽
我了解的有兩種解決辦法
其一:對(duì)癥下藥。既然是href引起的。那就去掉href屬性
當(dāng)我們用href=javascript:RefreshCode();只是更新驗(yàn)證碼。并沒有跳轉(zhuǎn)頁(yè)面。
代碼如下:
<ahref="javascript:RefreshCode();"class="yellow">看不清楚?換個(gè)圖片</a>
所以可以去掉href后,給a標(biāo)簽加上onclick事件,調(diào)用更新驗(yàn)證碼函數(shù)即可
代碼如下:
<aonclick="RefreshCode()"class="yellow">看不清楚?換個(gè)圖片</a>
其二:退一步。求同存異。既然你想用href屬性。好吧。那我再給你加個(gè)事件:onfocus
只要修改一下也可以完美去掉 給a標(biāo)簽加個(gè)onfocus="this.blur()"
當(dāng)然。如果你想讓a標(biāo)簽沒有下劃線。則:style="text-decoration: none"
代碼如下:
<a href="javascript:RefreshCode();"class="yellow"onfocus="this.blur()">看不清楚?換個(gè)圖片</a>
修改完成后的效果
而在FF等瀏覽器中則相對(duì)比較容易,直接給標(biāo)簽 a 定義樣式 outline:none;就可以了,即:
代碼如下:
a{ outline:none; }
當(dāng)然這僅僅是去掉單個(gè)。如果頁(yè)面有多個(gè)a標(biāo)簽?zāi)秦M不要挨個(gè)挨個(gè)添加onfocus事件嗎?
當(dāng)然不是。我們可以在頁(yè)面加載的時(shí)候。通過:window.document.links.length(此處window可以省略)來(lái)獲取頁(yè)面所有的a標(biāo)簽。然后遍歷注冊(cè)事件。
代碼如下:
<scripttype="text/javascript">
window.onload=function(){
for(var i=0; i<document.links.length; i++)
document.links[i].onfocus=function(){this.blur()}
}
</script>
2、給button加背景圖片:
另為如果你給按鈕加了背景圖片。會(huì)有陰影。
也可以用相同的辦法實(shí)現(xiàn)
代碼如下:
<asp:Button ID="imgBtnReg" runat="server"onfocus="this.blur()" OnClientClick="return chk_reg();"OnClick="imgBtnReg_Click" Text="確認(rèn)提交"/>
<input type="submit"id="btnReg" value="注冊(cè)" name="regist" onfocus="this.blur()"onclick="return checkAll()" />
修改后效果:
3、如果給img加a標(biāo)簽,那么給a標(biāo)簽加onfocus的同時(shí)還要設(shè)置img的border屬性:border=0
代碼如下:
<a href="#none"onfocus="this.blur()">
<img >
</a>
如果你頁(yè)面既有a標(biāo)簽。又有button。那你可以將其封裝成一個(gè)函數(shù)
代碼如下:
function fHideFocus(tName){
aTag=document.getElementsByTagName_r(tName);
for(i=0;i<aTag.length;i++)aTag.hideFocus=true;
//for(i=0;i<aTag.length;i++)aTag.onfocus=function(){this.blur();};
}
當(dāng)前是添加一個(gè)hidefocus的屬性,它的值是一個(gè)布爾值,如hideFocus=true。也可省略賦值直接hideFocus。
代碼如果沒有hideFocus,那么鼠標(biāo)點(diǎn)擊該超鏈接,則外面出現(xiàn)一個(gè)虛線框,即為聚焦。而使用了hideFocus則不會(huì)有虛線框。
注釋掉的句子是添加onfucus=this.blur();效果相同。
然后調(diào)用fHideFocus("A");即可把a(bǔ)的虛線框去掉
通過傳遞不同的參數(shù) 可以去掉不同的虛線框比如"BUTTON"可以去掉button的虛線框,但要記住參數(shù)要用大寫字母
擴(kuò)展:
A. map area內(nèi)鏈接如何消除鏈接虛線?
這是一個(gè)觀念上的錯(cuò)誤,其實(shí)應(yīng)該在所在map的圖片上加以控制,而不是在area內(nèi),參考傳統(tǒng)辦法
B. 關(guān)于onFocus
代碼如下:
<a href="http://blog.sina.com.cn/s/articlelist_3015911503_0_1.html"onfocus="this.blur()">
<img >
</a>
其中,onfocus是設(shè)置鼠標(biāo)焦點(diǎn)事件的東西,這個(gè)可以用,也可以不用,不過為了讓更多的瀏覽器識(shí)別的話,建議采用;border=0這個(gè)才是去除虛線框的關(guān)鍵所在(在網(wǎng)上看到大部分人都是用onfocus="this.blur()"來(lái)消除虛線框,但有的時(shí)候,僅僅用這一句是不能消除的)
感謝各位的閱讀!關(guān)于“如何去掉a標(biāo)簽和按鈕加背景圖片虛線/陰影”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。