web-dev-qa-db-ja.com

CSS背景画像にURLリンクを追加しますか?

次のようなCSSエントリがあります。

.header {
    background-image: url("./images/embouchure.jpg");
    background-repeat: no-repeat;
    height:160px;
    padding-left:280px;
    padding-top:50px;
    width:470px;
    color: #eaeaea;
    border-bottom:1px solid #eaeaea;


}

そのCSSの背景画像にリンクを追加するにはどうすればよいですか?

完全なCSSは here にあり、使用するHTMLは there です。

13
neversaint

アンカータグでスパンをラップして、それに背景画像を適用してみてください。

HTML:

<div class="header">
    <a href="/">
        <span class="header-title">My gray sea design</span><br />
        <span class="header-title-two">A beautiful design</span>
    </a>
</div>

CSS:

.header {
    border-bottom:1px solid #eaeaea;
}

.header a {
    display: block;
    background-image: url("./images/embouchure.jpg");
    background-repeat: no-repeat;
    height:160px;
    padding-left:280px;
    padding-top:50px;
    width:470px;
    color: #eaeaea;
}
16

CSSのみを使用すると、リンクを追加することはまったくできません:) HTML/CSSを使用して、背景画像やその一部をリンクすることはできません。ただし、次の方法を使用してステージングできます。

<div class="wrapWithBackgroundImage">
    <a href="#" class="invisibleLink"></a>
</div>

.wrapWithBackgroundImage {
    background-image: url(...);
}
.invisibleLink {
    display: block;
    left: 55px; top: 55px;
    position: absolute;
    height: 55px width: 55px;
}
8
Simeon

CSSからリンクを追加することはできません。HTMLコードから明示的に追加する必要があります。たとえば、次のようなもの:

<a href="whatever.html"><li id="header"></li></a>
1
Sarfraz