AMP
  • 广告

轮播广告

摘要

使用 amp-carousel 创建交互式广告的示例 AMPHTML 广告。

样式

这是一个高级示例,需要一些样式才能使其正确显示和运行。

<style amp-custom>
  .root-container {
    font-family: 'Roboto', sans-serif;
    font-size: 12px;
    line-height: 18px;
    overflow: hidden;
    background: #6a594b;
    color: #ffffff;
    width: 100%;
    height: 100vh;
    position: relative;
    display: flex;
    flex-direction: column;
  }
  .main-container {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
  }
  .footer {
    background: #000000;
    color: #ffffff;
    padding: 8px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
  }
  .footer-logo {
    border-right: 1px solid #ffffff;
    padding: 0 8px 0 0;
    margin: 0 8px 0 0;
  }
  .bg-img {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
  }
  .logo-img {
    display: block;
  }
  .stretch {
    flex: 1;
  }
  .button {
    cursor: pointer;
    text-decoration: none;
    text-transform: uppercase;
    padding: 6px 10px;
    color: #ffffff;
    display: inline-block;
    background-color: #2979ff;
  }
  .carousel-item {
    width: 184px;
    height: 105px;
    padding: 12px 2px;
    color: #000000;
    position: relative;
  }
  .carousel-item:first-child {
    padding-left: 12px;
  }
  .carousel-item:last-child {
    padding-right: 12px;
  }
  .carousel {
    width: 100%;
    position: absolute;
  }
  .carousel-item-inner {
    width: 180px;
    height: 105px;
    padding: 2px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 4px;
    position: relative;
  }
  .carousel-img {
    display: block;
    border: 2px solid #ffffff;
    border-radius: 2px;
  }
  .carousel-button-container {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10px;
    text-align: center;
  }
  .learn-more a {
    padding: 8px 0;
    text-transform: uppercase;
    display: inline-block;
    color: #2979ff;
    text-decoration: none;
    font-weight: bold;
  }
</style>

我们使用 amp-carousel 沿水平轴显示多个内容。

所有具有 carousel-item 类名的元素本质上具有相同的标记:一个激活灯箱的容器、一个图像和一个按钮。

AMP 有一个用于 事件和操作 的系统。它使用一种特定于领域的语言来描述如何触发操作。在本例中,我们设置了 on 属性,以便在点击轮播项时激活灯箱。每个按钮还将切换灯箱中特定项的可见性(请参阅 showhide)。

<amp-carousel
    height="132"
    layout="fixed-height"
    type="carousel"
    class="carousel">
  <div class="carousel-item">
    <div class="carousel-item-inner">
      <amp-img src="/static/samples/img/car-engine.jpg"
          width="177"
          height="100"
          layout="fixed"
          class="carousel-img"></amp-img>
      <div class="carousel-button-container">
        <a href="https://amp.org.cn/documentation/examples/" target="_blank" class="button carousel-button">
          6C Tuned Engine
        </a>
      </div>
    </div>
  </div>
  <div class="carousel-item">
    <div class="carousel-item-inner">
      <amp-img src="/static/samples/img/car-gauges.jpg"
          width="177"
          height="100"
          layout="fixed"
          class="carousel-img"></amp-img>
      <div class="carousel-button-container">
        <a href="https://amp.org.cn/documentation/examples/" target="_blank" class="button carousel-button">
          Sport Gauge Cluster
        </a>
      </div>
    </div>
  </div>
  <div class="carousel-item">
    <div class="carousel-item-inner">
      <amp-img src="/static/samples/img/car-seats.jpg"
          width="177"
          height="100"
          layout="fixed"
          class="carousel-img"></amp-img>
      <div class="carousel-button-container">
        <a href="https://amp.org.cn/documentation/examples/" target="_blank" class="button carousel-button">
          Luxury Seats
        </a>
      </div>
    </div>
  </div>
</amp-carousel>
</div>

<div class="footer">
<div class="footer-logo">
  <amp-img src="/static/samples/img/car-logo.png"
      width="72"
      height="32"
      layout="fixed"
      alt="Howdy"
      class="logo-img"></amp-img>
</div>
<div class="stretch">The All-New WX-S R5</div>
<a href="https://amp.org.cn/documentation/examples/" target="_blank" class="button">
  Learn more
</a>
</div>
</div>
需要进一步解释吗?

如果此页面上的说明没有涵盖您的所有问题,请随时联系其他 AMP 用户来讨论您的确切用例。

转到 Stack Overflow
未解释的功能?

AMP 项目强烈鼓励您的参与和贡献!我们希望您成为我们开源社区的持续参与者,但也欢迎您为自己特别热衷的问题做出一次性贡献。

在 GitHub 上编辑示例