没有移动背景的过渡(CSS和HTML)

时间:2017-03-21 16:03:29

标签: html css hover transition

我还是新编码,所以你会在css中看到一些不必要的代码。 我的问题是,我想在悬停时使背景保持静止,我相信我的悬停风格被称为“滑动”..但是当我悬停时,背景确实也悬停了。所以,我需要一个关于如何在悬停时使背景保持静态的帮助。

p / s:请保留avpb的保证金:)

CSS:

public partial class Form1 : Form
{
    public Form1()
    {
        //Simulate a long init
        Thread.Sleep(2000);

        InitializeComponent();
    }

    private void Form1_Shown(object sender, EventArgs e)
    {
        foreach (var splashScreen in Application.OpenForms.OfType<Form2>())
        {
            splashScreen.BeginInvoke( (Action) delegate () { splashScreen.Close(); });
        }
    }
}

HTML:

#avpb {
background: rgba(0, 0, 0, 0.6);
width: 160px; 
height: 220px;
border: 1px solid #000000;
padding: 19.5px;
margin-top: -10px;
margin-left: 555px;
position: absolute;
}

#avp {
position: absolute;
width: 160px;
height: 220px;
}

#avp img {
position: absolute;
z-index: 0;
}

.overlay {
position: absolute;
width: 100%;
height: 100%;
z-index: 1;
opacity: 0;
-webkit-transition:all .3s ease-out;
-moz-transition:all .3s ease-out;
-ms-transition:all .3s ease-out;
-o-transition:all .3s ease-out;
transition:all .3s ease-out;
}

#avp:hover > .overlay {
opacity: 1;
width: 160px;
height: 220px 
height:auto;
background: rgba(0, 0, 0, 0.6);
-webkit-transform:translate(0px,10px);
-moz-transform:translate(0px,10px);
-ms-transform:translate(0px,10px);
-o-transform:translate(0px,10px);
transform:translate(0px,10px);
}

.button {
width: 160px;
height: 220px;
position: absolute;
}

.button a {
font-family: Lato;
font-size: 10px;
letter-spacing: 1px;
width: 80px;
height: 25px;
line-height: 25px;
margin-left: auto;
margin-right: auto;
background: rgba(0, 0, 0, 0.6);
border: 1px solid #000000;
text-align: center;
text-decoration: none;
padding: 5px;
color: #ffffff !important;
display: block;
transition: 0.5s ease; 
-webkit-transition: 0.5s ease; 
-o-transition: 0.5s ease; 
-ms-transition: 0.5s ease; 
}

.button a:hover {
background: rgba(0, 0, 0, 0.6);
border: 1px solid #4cd1db;
color: #4cd1db !important;
text-decoration: none;
letter-spacing: 2px;
transition: 0.5s ease; 
-webkit-transition: 0.5s ease; 
-o-transition: 0.5s ease; 
-ms-transition: 0.5s ease; 
}

这是JSFiddle

2 个答案:

答案 0 :(得分:0)

然后你应该让 .button 转换。我在你的css文件中添加了一些样式,很难解释,只是尝试将它与原始代码进行比较:)。

&#13;
&#13;
#avpb {
  background: rgba(0, 0, 0, 0.6);
  width: 160px;
  height: 220px;
  border: 1px solid #000000;
  padding: 19.5px;
  margin-top: -10px;
  margin-left: 555px;
  position: absolute;
}

#avp {
  position: absolute;
  width: 160px;
  height: 220px;
}

#avp img {
  position: absolute;
  z-index: 0;
}

.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  -o-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.button{
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  -o-transition: all .3s ease-out;
  transition: all .3s ease-out;
}

#avp:hover>.overlay {
  opacity: 1;
  width: 160px;
  height: 220px height:auto;
  background: rgba(0, 0, 0, 0.6);
}
#avp:hover>.overlay>.button {
  opacity: 1;
  width: 160px;
  height: 220px height:auto;
  -webkit-transform: translate(0px, 10px);
  -moz-transform: translate(0px, 10px);
  -ms-transform: translate(0px, 10px);
  -o-transform: translate(0px, 10px);
  transform: translate(0px, 10px);
}

.button {
  width: 160px;
  height: 220px;
  position: absolute;
}

.button a {
  font-family: Lato;
  font-size: 10px;
  letter-spacing: 1px;
  width: 80px;
  height: 25px;
  line-height: 25px;
  margin-left: auto;
  margin-right: auto;
  background: rgba(0, 0, 0, 0.6);
  border: 1px solid #000000;
  text-align: center;
  text-decoration: none;
  padding: 5px;
  color: #ffffff !important;
  display: block;
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
}

.button a:hover {
  background: rgba(0, 0, 0, 0.6);
  border: 1px solid #4cd1db;
  color: #4cd1db !important;
  text-decoration: none;
  letter-spacing: 2px;
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
}
&#13;
<div id="avpb">
  <div id="avp">
    <img src="http://www.imvu.com/catalog/web_av_pic.php?u=87116145">
    <div class="overlay">
      <div class="button">
        <br>
        <br>
        <a href="http://www.imvu.com/catalog/web_add_contact.phpcontact=applesunsweets">add</a>
        <br>
        <a href="javascript:IMVU.messagePopupShow({force_recipient_id:87116145})">message</a>
      </div>
    </div>
  </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您正在将div转换/转换为10像素:

  -webkit-transform:translate(0px,10px);
  -moz-transform:translate(0px,10px);
  -ms-transform:translate(0px,10px);
  -o-transform:translate(0px,10px);
  transform:translate(0px,10px);

删除这些,它应该可以正常工作。