我試圖顯示一個郵件鏈接。CSS有這種可能嗎?
超文本標記語言
<li class="fe footer_no_link"></li>
鋼性鑄鐵
.footer_column .fe:after {content:"<a href="mailto:info@site.com">info@site.com</a>"; }
不能使用CSS3 ::after或::before選擇器添加html元素。內容:“”屬性將只接受純文本。
你必須記住CSS僅僅是為了樣式的目的。這包括::before和::after選擇器。
您最好的選擇是使用JavaScript替代品。
您的價值沒有出現,因為語音標記需要轉義或更改:
.fe:after {content:"<a href='mailto:info@site.com'>info@site.com</a>"; }?
http://jsfiddle.net/Cb2ry/
即使這樣,你的內容也只是顯示為靜態文本,而不是渲染。
用偽元素添加的內容不會出現在DOM中,所以不能。 但是為什么要用CSS來做呢?它不是樣式,正確的位置似乎是直接在HTML文件上。
如果目標是阻止垃圾郵件,我通常使用這段javascript:
var m;
m='in';
m+='f';
m+='o@exa';
m+='mpl';
m+='e.co';
m+='m';
$ele = document.getElementById('contact-mail');
$ele.href = 'mailto:'+m;
$ele.innerHTML = m;
郵件被分割,以確保它不會在任何文件中顯示為電子郵件。
你可以在這里看到結果:http://jsfiddle.net/tzkDt/ ?
這可能對某人有用...
我沒有用css插入鏈接,而是用href & amp類,但將其留空。像這樣:
<p>This text is always here.</p>
<a class="mobile" href="mailto:info@site.com"></a>
.mobile:after {
content:'Click here to email us.'
}
這樣,鏈接在包含內容之前不會出現(高度:0,寬度:0)。
我將它用于一個響應商店定位器,在那里地圖以小屏幕尺寸堆疊在位置列表的頂部,需要一個到列表錨點的鏈接。我認為這是一個“設計”決定,這是唯一合理的理由。
你不能在css中的內容中添加html。除非你逃避一切。
http://jsfiddle.net/PDTng/
或者,您可以使用jQuery并使用。html(),例如:
http://jsfiddle.net/PDTng/1/
上一篇編輯引導開關的禁用狀態
下一篇python 畫點并連線