css - 单独在背景图像上的 compass 过渡不透明度

标签 css css-transitions compass-sass transition

我想在悬停时将背景图像设为 50% 不透明,并让页面上的所有其他元素保持原样。这是我的 SASS:

.background {
  div {
    @include background(image-url("background.jpg"));
    padding-bottom: 68.53%;
    @include transition-property(opacity);
    @include transition-duration(2s);
    @include transition-timing-function(ease-in);
    &:hover {
      opacity: 0.5;
    }
  }

  #cover {
    @include background-size(cover);
  }
}

.intro {
  width: 100%;
  position: absolute;
  margin-top: 100px;
  left: 20%;
  padding-left: 10px;
  max-width: 650px;
}

h2.intro {
  font-size: 3.5em;
}

这是 html:

<div class="intro">
  <h2 class="intro">Introduction</h2>
</div>
<div id="anchor">
  <div class="background">
    <div id="cover">&nbsp;</div>
  </div>
</div>

目前过渡本身效果很好,但当我想单独将不透明度应用于背景图像时,它也会使“Introduction”变得不透明。我究竟做错了什么?

最佳答案

这最终解决了它。 SASS:

#intro {
  div {
    @include background(image-url("nathanstudio.jpg"));
    padding-bottom: 68.53%;
  }

  #cover {
    @include background-size(cover);
  }

  @include transition-property(opacity);
  @include transition-duration(2s);
  @include transition-timing-function(ease-in);
  &:hover {
    opacity: 0.5;
  }
}

h2#intro {
    position: absolute;
    top: 20%;
    left: 10%;
    margin: 0;
    font-size: 3.5em;
    text-shadow: 2px 2px 0px #000000;
}

和 HTML:

<div id="intro">
    <div id="cover">&nbsp;</div>
</div>
<h2 id="intro">Composer<br>Sound Designer</h2>

因此,问题在于将您不想转换的内容保留在您要转换的内容的 div 之外,然后定位这些内容,以便它们到达您想要的位置。现在看起来很简单 ;)

关于css - 单独在背景图像上的 compass 过渡不透明度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28009684/

相关文章:

ruby-on-rails - compass 中的 _base.scss 和 base.scss

css - compass 背景图像背景颜色?

css - Susy 中的 float 元素具有均匀的宽度、填充和边框

android - 如何在 Xamarin.Forms 中获取 iOS 和 Android 的辅助功能字体大小,以便我可以在 HTML WebView 中更改字体大小?

jquery - float FancyBox?

css - 编写 CSS 过渡的最简洁的方式

css - 下划线 css3 过渡

css - 固定 div 中的垂直居中

javascript - 粘性导航显示与 JQuery slideDown 缓慢

CSS3 transition - 改变动画 "anchor point"?