2017-01-09 1 views
0

나는 사업부 다음 한 CSS/CSS3에로 마우스를 한 후 5 초 동안 볼 수있을 DIV합니다숨겨진 사업부는에 : 마우스를 가져 내 <strong>HTML</strong> 페이지에서

<div class="tooltip"> 
    <span>content</span> 
</div> 

그리고 다음 CSS 스크립트

마우스 사업부에서
.tooltip span { 
    display:none; 
} 
.tooltip:hover span { 
    display:inline; 
} 

스팬보다 5 초 동안 볼 수 머물 수 있도록하는 방법이 있나요 후? 내가 이것을하려고하는 이유는이 툴팁에 링크와 같은 내용이 들어 있기 때문입니다.

+0

일부 j를 추가해야합니다. https://developer.mozilla.org/ko-KR/Add-ons/Code_snippets/Timers – Aslam

+0

@hunzaboy 정말요? 이것은 css/css3에서 수행 할 수 없습니까? – user3050478

+1

할 수는 있지만 접근 방식이 다를 수 있습니다. 여기 http : // stackoverflow를 읽으십시오.com/questions/21993661/css-auto-hide-elements-after-5-seconds – Aslam

답변

1

죄송합니다 PURE CSS, 나는 잊어 버렸습니다. Display은 전환에 의해 영향을받지 않습니다.

대신 opacity을 사용하십시오.

사용 전환 : 당신이 페이드 아웃하려면

.tooltip span { 
    opacity: 0; 
    transition: opacity 0s 1s; 
} 
.tooltip:hover span { 
    opacity: 1; 
    transition: opacity 0s; 
} 

.tooltip span { 
 
    opacity: 0; 
 
    transition: opacity 0s 5s; 
 
} 
 

 
.tooltip:hover span { 
 
    opacity: 1; 
 
    transition: opacity 0s; 
 
}
<div class="tooltip"> 
 
    <span>content</span> 
 
</div>

, 이것을 사용 :

.tooltip span { 
    opacity: 0; 
    transition: opacity 0s 5s; 
} 
.tooltip:hover span { 
    opacity: 1; 
    transition: opacity 0s; 
} 

.tooltip span { 
 
    opacity: 0; 
 
    border: 1px solid transparent; 
 
    transition: all .4s 4.6s; 
 
} 
 

 
.tooltip:hover span { 
 
    opacity: 1; 
 
    border: 1px solid #000; 
 
    opacity: 1; 
 
    transition: all .4s; 
 
}
<div class="tooltip"> 
 
    <span>content</span> 
 
</div>
,129,

업데이트 여러 속성이있는 경우 all을 사용하십시오. 참고 : 일반적으로 초기 속성과 변경된 속성이 있어야합니다. 예 : JSFiddle (작업)

+2

디스플레이 속성에서 전환이 작동하지 않습니다. – Aslam

+2

그래, 방금 게시 한 후, 감사드립니다! –

+0

안녕하세요 @ChrisHappy, 나는 그것을 테스트하고 그것은 5 초 후에 페이드 했어,하지만 스팬이'position : absolute;', 테두리, 배경 등등과 같은 다른 속성을 가지고 있다면 어떻게해야합니까? ? – user3050478

1

의 jQuery 솔루션을 참조하십시오 : 여기 내 시도가

$(".tooltip").mouseover(function() { 
 
    $('.tooltip span').show(); 
 
    setTimeout(function(){ 
 
    $('.tooltip span').hide('slow', function(){ 
 
\t });// or fade, css display however you'd like. 
 
}, 5000); // set visible time 
 
});
.tooltip span { 
 
    display:none; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 

 
<div class="tooltip"> 
 
    tooltip 
 
    <span>content</span> 
 
</div>

+1

당신은 단지 CSS 기반의 솔루션을 제공해야합니다 –

1

입니다!

HTML

<div class="tooltip"> 
    Title 
    <span> - content</span> 
</div> 

CSS

.tooltip span { 
    visibility: hidden; 
} 

.tooltip:hover span { 
    visibility: visible; 
} 

.tooltip span:not(:hover) { 
    visiblity: hidden; 
    transition: visibility 5s; 
} 

JSFiddle : https://jsfiddle.net/mpx3m1v4/

+1

https://jsfiddle.net/3zaz28L6/1/ <- 이것이 최선의 방법 일 수 있습니다! – PloxPanda

0

순수 CSS. 이것은 완벽하지 않습니다. 이 시도.

.tooltip span { 
    //display:none; 
    display: block; 
} 
.tooltip:hover span { 
    //display:inline; 
    -webkit-animation: opacity1 0.1s 1 forwards; 
    animation: opacity1 0.1s 1 forwards; 
} 

.tooltip:not(:hover) span{ 
    -webkit-animation: opacity0 0.1s 1 forwards; 
    animation: opacity0 0.1s 1 forwards; 
    -webkit-animation-delay: 5s; 
    animation-delay: 5s; 
} 

@-webkit-keyframes opacity1 { 
    to {opacity: 1; height: auto; width: auto;} 
} 
@keyframes opacity1 { 
    to {opacity: 1; height: auto; width: auto;} 
} 

@-webkit-keyframes opacity0 { 
    to {opacity: 0; height: 0; width: 0;} 
} 
@keyframes opacity0 { 
    to {opacity: 0; height: 0; width: 0;} 
} 
관련 문제