1

我想最初在我的正文中隐藏文本,但是一旦将子 div 中的元素悬停在上面,就会显示它。因此,在这种情况下,我希望它们最初都以display: none但是当我将鼠标悬停在字母“H”上时,我希望显示“文本 A”。当我将鼠标悬停在字母“E”上时,我希望显示“文本 B”。我不想将我的#content 元素放在我的#word 元素中。我想将它们保留为单独的 div。

有任何想法吗?

(见下面的小提琴)

HTML:

<div id="word">
    <h1><a id="h" class= "letter" href=#>H</a></h1>
    <h1><a id="e" class= "letter" href=#>E</a></h1>
    <h1><a id="l" class= "letter" href=#>L</a></h1>
    <h1><a id="l2"class= "letter" href=#>L</a></h1>
    <h1><a id="o" class= "letter" href=#>O</a></h1> 
</div>

<div id="content">
    <div id="textA">Text A</div>
    <div id="textB">Text B</div>
</div>

CSS:

 body {
    font-family: 'Chango', cursive;
    font-size: 115px;
    color: white;
    text-shadow: 5px 5px 5px #000;

    width: 100%;
    height: 100%;
    margin: 0px;
    background: black;
    }

    #name {
    position:absolute; 
    height:100%; 
    width: 70%;
    display: table;
    padding: 0 15% 0 15%;
    background: black;
    }

    h1 {
    display: table-cell;
    vertical-align: middle;
    text-align:center;
    height: 1em;

    }

    a {
    /*border: 1px solid black;*/
    display: inline-block;
    line-height: 89%;
    overflow: hidden;

    }

    a:visited, a:active {
    text-decoration: none;
    color: white;
    /*color: #E8E8E8;*/

    }

    a:link {
    text-decoration: none;
    color: white;
    text-shadow: 3px -3px 0px black, -2px 2px 5px #0056b2;

    }

    a:hover {
    text-shadow: 5px 5px 5px #000;
    color: white;
    }

小提琴:http: //jsfiddle.net/ADfhj/1/

PS-我尝试了以下CSS无济于事:

#textA {
display: none;
}

#word:hover #textA {
display: block;
}
4

1 回答 1

6

仅使用 css 是无法实现的。但是,您可以尝试简单的 javascript/jquery。

 $('.letter').mouseover(function(){
    var cont = $(this).attr('id');
    $('#content>div').hide();
    $('#text_'+cont).fadeIn();
});

检查小提琴

于 2013-09-09T03:48:31.380 回答