首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该在哪个元素上应用过渡?

我应该在哪个元素上应用过渡?
EN

Stack Overflow用户
提问于 2021-09-05 15:00:31
回答 1查看 25关注 0票数 0

我正在创建一个项目,其中我需要显示一个主题的标题,当鼠标经过它时,它会更改为该标题的信息。我已经设法让它工作,但我不希望它立即改变,我想在它上应用过渡,使它更令人愉悦。问题是我不知道该把它放在哪个元素上。我试着把它放在所有三个上面,但都不起作用。如果有人帮我的话我会很感激的。下面是我的代码:

HTML

代码语言:javascript
复制
<div class="sop-container">
           <div class="sop-body"  onmouseover="showSop()" onmouseout="hideSop()">
               <h1 id="sop-head">Lorem Ipsum</h1>
               <p class="sop-p" id="sop-p">Lorem ipsum dolor sit amet consectetur adipisicing elit. Veritatis, tempore laudantium maiores eligendi tempora ab repellat nam possimus sit molestiae cumque officiis corporis optio officia commodi consequatur aperiam quaerat odit.</p>
           </div>
           <div class="sop-img">   
                <img src="masks.jpg" alt="">
           </div>
       </div>

CSS

代码语言:javascript
复制
.sop-body{
    flex: 1;
    background-color: #EAC435;
    transition: 3s ease;
    

}

.sop-body h1{
    text-align: center;
    margin-top:125px;
    transition: 3s ease-in-out;
}




.sop-body p{
    display: none;
    margin:5%;
    letter-spacing: 1px;
    font-size: large;
    margin-top: 80px ;
    transition: 3s ease-in-out;
}



.sop-img{
    flex: 1;
    overflow-y: hidden;
  
}

Javascript (以防万一)

代码语言:javascript
复制
var sopBody = document.getElementById("sop-p");
var sopHead = document.getElementById("sop-head")

function showSop(){
    sopBody.style.display = "block"
    sopHead.style.display = "none"

}

function hideSop(){
    sopBody.style.display = "none"
    sopHead.style.display = "block"
}
EN

回答 1

Stack Overflow用户

发布于 2021-09-05 15:06:23

transitiondisplay属性上不起作用。只需考虑一下如何呈现部分显示元素。你不能这么做。

或者,您也可以在此处使用opacity

代码语言:javascript
复制
var sopBody = document.getElementById("sop-p");
var sopHead = document.getElementById("sop-head")

function showSop() {
  sopBody.style.opacity = "1"
  sopHead.style.opacity = "0"
}

function hideSop() {
  sopBody.style.opacity = "0"
  sopHead.style.opacity = "1"
}
代码语言:javascript
复制
.sop-body {
  flex: 1;
  background-color: #EAC435;
}

.sop-body h1 {
  text-align: center;
  margin-top: 125px;
  transition: 1s ease-in-out;
}

.sop-body p {
  opacity: 0;
  margin: 5%;
  letter-spacing: 1px;
  font-size: large;
  margin-top: 80px;
  transition: 1s ease-in-out;
}

.sop-img {
  flex: 1;
  overflow-y: hidden;
}
代码语言:javascript
复制
<div class="sop-container">
  <div class="sop-body" onmouseover="showSop()" onmouseout="hideSop()">
    <h1 id="sop-head">Lorem Ipsum</h1>
    <p class="sop-p" id="sop-p">Lorem ipsum dolor sit amet consectetur adipisicing elit. Veritatis, tempore laudantium maiores eligendi tempora ab repellat nam possimus sit molestiae cumque officiis corporis optio officia commodi consequatur aperiam quaerat odit.</p>
  </div>
  <div class="sop-img">
    <img src="masks.jpg" alt="">
  </div>
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69064549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档