2016-03-23 3 views
0
#hello{ 
    font-size: 4em; 
} 
div.about{ 
    display: none; 
} 
#hello:hover div.about { 
    display: block; 
} 



<pre id="hometext"><span id="hello">Hello!</span></pre> 
<div class="about" id="about"><p>hello</p></div> 

Zunächst einmal bin ich neu zu Stackoverflow. Zweitens möchte ich über einen bestimmten Teil eines Absatzes die Spanne und dann dieses div erscheinen lassen. Aber es scheint nicht zu funktionieren.Wie schwebe ich über den Bereich, um ein div erscheinen zu lassen?

+0

Es gibt kein '# Naam' Element. Es gibt kein '# hallo' Element, sondern ein' # hallo' Element. Tippfehler sind auf StackOverflow off-topic. – Xufox

+0

@Xufox Sorry, es war ursprünglich auf Niederländisch, also änderte ich es für sichtbar. Also die Tippfehler waren nicht das Problem – dajasj

+0

Hm, in Ordnung. Der Abstand zwischen '#hello: hover' und' div.about' bedeutet, dass 'div.about' ein Element _inside_' #hello: hover' sein sollte, was nicht der Fall ist. Du könntest '#hometext: hover + div.about' anstelle von' #hello: hover div.about' versuchen. – Xufox

Antwort

0

Ich bin mir nicht ganz sicher, ob dies gefragt ist, aber Sie können die onmouseover und onmouseout Attribute des Bereichselements verwenden.

Mit ein wenig Javascript, können Sie erreichen, was ich denke, was Sie tun möchten:

function hideDiv() { 
 
    document.getElementById("divToHide").style.visibility = 'hidden'; 
 
} 
 

 
function showDiv() { 
 
    document.getElementById("divToHide").style.visibility = 'visible'; 
 
}
#divToHide { 
 
    height: 100px; 
 
    width: 100px; 
 
    background: red; 
 
} 
 

 
#hoverMe { 
 
    cursor: pointer; 
 
}
<div id="divToHide"> 
 
</div> 
 

 
<br /> 
 

 
<p> 
 
    This is a paragraph. If you hover <span id="hoverMe" onmouseover="hideDiv()" onmouseout="showDiv()">here</span>, it will hide the red box. 
 
</p>

+0

Ich bin jedoch beschränkt auf die Verwendung von HTML/CSS für diese Aufgabe. – dajasj

0

Ich glaube, Sie dort einige Javascript brauchen:

function showOtherDiv() { 
 
\t document.getElementById("about").style.display = "block"; 
 
} 
 

 
function hideOtherDiv() { 
 
\t document.getElementById("about").style.display = "none"; 
 
}
#hello { 
 
    font-size: 4em; 
 
} 
 

 
div.about { 
 
    display: none; 
 
} 
 

 
#hello:hover div.about { 
 
    display: block; 
 
}
<pre id="hometext"> 
 
    <span id="hello" onmouseover="showOtherDiv()" onmouseout="hideOtherDiv()">Hello!</span> 
 
</pre> 
 

 

 
<div class="about" id="about"> 
 
    <p>hello</p> 
 
</div>

Hier ist ein codepen

1

Sie nicht Javascript verwenden haben:

#hometext:hover + #about { display:none; } 
+0

Gibt es einen Weg, um speziell für die span und nicht für den vollständigen Absatz? – dajasj