嗨,我有一個場景,我需要在一個元素中添加來自服務器的HTML內容,并用藍色樣式的電子郵件地址。
來自服務器的HTML內容::
"<p>139, Sethiwan Tower,<br>
10th Floor, Pan Rd,<br>
Silom, Bang Rak,<br>
Bangkok 10500,<br>
Thailand
<br/>
<br/>
<strong>Call us</strong> <br/>
(Service hotline) +66 2 430 4077
<br/>
<br/>
<strong>Send us an email</strong> <br/>
<a href="mailto:device-info@bolttech.co.th" target="_blank" rel="noopener noreferrer">device-info@bolttech.co.th</a></p>"
我在前端的DIV標簽中設置這些內容,如下所示:
<div dangerouslySetInnerHTML={{ __html: html }} />
我想使電子郵件地址來作為紅色。
我該怎么做呢?
dangerouslySetInnerHTML將呈現HTML,就像它是您的div的子元素一樣。因此,你只需要找出正確的CSS選擇器來定位a元素。
萬一有人偶然發現這個,并且有和自己類似的情況——動態顏色(js變量)。你可以這樣做:
<div
dangerouslySetInnerHTML={{
__html: html
.replace(/<a /g, `<a style="color: ${dynamicColor};"`),
}}
/>