web-dev-qa-db-ja.com

cssでhtmlタグのhrefを変更する

このAタグをから変更する必要があります

<a href="contact.html" >Contact</a>

<a href="tel:+13174562564" >Contact</a>

可能であればCssのみで、またはこのように

<a href="tel:+13174562564" >+13174562564</a>

私はたくさんのページを持っていて、それらすべてを編集したくありません。それは一生かかるでしょう。それが私がCSSでそれをする必要がある理由です、そして私はそれらにリンクされたJSを持っていません

8
kais mellah

CSSは表示のみであり、CSSを使用してドキュメントオブジェクトモデルを変更することはできません。申し訳ありませんが、これはできません。もっと良い答えがあればいいのですが、「できない」だけが答えです。

26
jnovack

CSSはプレゼンテーション用であり、意図した方法でHTMLマークアップを変更するために使用することはできません。これにはJavaScriptが必要です。

かなり短いスクリプト

10

1つの解決策は、タグを非表示にして別のタグを配置することです

<div id="tag1">
<a href="#tag1">link1</a>
<a href="#tag2">link2</a>
</div>

css:

a[href="#tag1"] {
display:block;
}

a[href="#tag2"] {
display:none;
}

#tag1:target  a[href="#tag1"]{
 display:none;
}

#tag1:target  a[href="#tag2"]{
 display:block;
}

メニューバーのレスポンシブな「ボタン」にこの方法を使用します

3
kiwi

私はjQueryによって非常に簡単にそれを行いました。

 $(".website").click(function () {
        window.open("https://www.website.com", "_blank");
 })
0