利用纯CSS3实现文字向右循环闪过效果实例(可用于移动端)

下面是“利用纯CSS3实现文字向右循环闪过效果实例”的完整攻略:

一、概述

这里介绍的是一种利用纯CSS3实现文字向右循环闪过效果的方法,这种效果在移动端上可以很好地展现,同时也很常见。其实现基于CSS3的动画属性,如animation-duration、animation-delay、animation-iteration-count等。

二、实现步骤

(1)在CSS中定义一个父元素,里面放置一个span元素,用来显示文字。

.parent{
    position: relative;
    height: 30px;
    line-height: 30px;
    overflow: hidden;
}
.parent span{
    position: absolute;
    display: inline-block;
}

(2)利用CSS3中的animation属性定义动画,并将其应用在span元素上。

.parent span{
    animation: marquee 7s linear infinite;
}
@keyframes marquee{
    0%  {left: 0;}
    100%{left: -180px;}
}

(3)定义两个以上的span元素,实现多行文字循环闪过。

<div class="parent">
    <span>这是一行文字</span>
    <span>这是第二行文字</span>
    <span>这是第三行文字</span>
</div>

在这里,我们定义了三行文字,每行文字不一定要一样长,其宽度将决定动画完成的时间。

三、示例说明

示例一

下面是一段HTML代码,用于实现一个自适应布局的网页头部菜单,其中包含了利用纯CSS3实现文字向右循环闪过效果的代码。

<header>
  <nav>
    <a href="#">首页</a>
    <a href="#">新闻动态</a>
    <a href="#">产品展示</a>
    <a href="#">联系我们</a>
  </nav>
</header>
header nav{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
header nav a{
  margin-right: 30px;
  font-size: 16px;
  color: #333;
  text-decoration: none;
  position: relative;
}
header nav a::before{
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #333;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}
header nav a:hover::before{
  transform: scaleX(1);
}
header nav a span{
  display: inline-block;
  animation: marquee 20s linear infinite;
  animation-delay: 2s;
}
@keyframes marquee{
  0% {transform: translateX(0);}
  100% {transform: translateX(-100%);}
}

在这里,我们给每个菜单选项添加了一个下划线并使用了过渡效果,同时利用CSS3实现了文字循环闪过效果,可以完美适用于移动端。

示例二

下面是一段HTML代码,用于实现一个博客页面,其中包含了利用纯CSS3实现文字向右循环闪过效果的代码。

<header>
  <h1>我的博客</h1>
</header>
<main>
  <article>
    <h2>文章标题</h2>
    <p>这是一篇文章内容</p>
  </article>
  <article>
    <h2>文章标题</h2>
    <p>这是一篇文章内容</p>
  </article>
  <article>
    <h2>文章标题</h2>
    <<p>这是一篇文章内容</p>
  </article>
</main>
<footer>
  <ul>
    <li><a href="#">关于我们</a></li>
    <li><a href="#">联系我们</a></li>
  </ul>
</footer>
header{
  text-align: center;
  margin-bottom: 50px;
}
header h1{
  font-size: 36px;
  color: #333;
  margin-bottom: 10px;
}
article h2{
  font-size: 24px;
  color: #333;
  margin-bottom: 10px;
}
article p{
  font-size: 18px;
  color: #666;
  line-height: 1.5;
}
footer ul{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
}
footer li{
  margin-right: 30px;
}
footer a{
  font-size: 16px;
  color: #333;
  text-decoration: none;
  position: relative;
}
footer a::before{
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #333;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}
footer a:hover::before{
  transform: scaleX(1);
}
footer a span{
  display: inline-block;
  animation: marquee 20s linear infinite;
  animation-delay: 2s;
}
@keyframes marquee{
  0% {transform: translateX(0);}
  100% {transform: translateX(-100%);}
}

在这里,我们给博客页面添加了一个样式,又利用CSS3实现了文字循环闪过效果,可以提升页面的美观程度。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:利用纯CSS3实现文字向右循环闪过效果实例(可用于移动端) - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • js es6系列教程 – 新的类语法实战选项卡(详解)

    “js es6系列教程 – 新的类语法实战选项卡(详解)”是一篇关于JavaScript ES6类语法与选项卡实战的教程。该教程主要包含以下几个部分: 一、类的基本语法 在该部分,作者详细介绍了ES6中类的基本语法,包括类的定义、构造函数、方法等概念。同时,作者还对比了ES6类和ES5构造函数的不同之处。示例代码如下: //ES6定义类 class Anim…

    css 2023年6月9日
    00
  • 仅使用CSS做到完全居中的超级攻略

    仅使用CSS做到完全居中的超级攻略 在Web开发中,居中是一个非常常见的需求,本攻略将详细讲解如何仅使用CSS做到完全居中,包括水平居中和垂直居中的实现方法,以及两个示例说明。 1. 水平居中的实现方法 1.1. 行内元素的水平居中 对于行内元素,可以使用text-align属性来实现水平居中。例如: div { text-align: center; } …

    css 2023年5月18日
    00
  • HTML文本格式化

    HTML文本格式化是将HTML代码中的文本内容按照特定的格式进行展示,包括字体、颜色、对齐方式等。 HTML 中有许多用来格式化文本的标签,如下表所示: 标签 描述 <b>…</b> 加粗标签中的字体 <em>…</em> 强调标签中的内容,并使标签中的字体倾斜 <i>…</i&g…

    Web开发基础 2023年3月15日
    00
  • CodeIgniter生成网站sitemap地图的方法

    下面是详细的“CodeIgniter生成网站sitemap地图的方法”的攻略过程。 什么是网站sitemap地图? 网站Sitemap,又称为XML Sitemap,是一种文件格式,用于告知搜索引擎关于网站上所有页面的信息。Sitemap 可以显示站点中哪些页面有多重关系和哪些页面之间的相对优先级。 CodeIgniter生成网站Sitemap地图的方法 在…

    css 2023年6月10日
    00
  • 全面解析Bootstrap中transition、affix的使用方法

    全面解析Bootstrap中transition、affix的使用方法 Bootstrap是一个流行的前端框架,它提供了多种组件和工具,方便了开发者们的网站制作。其中,transition和affix是两个常用的工具。本文将详细讲解它们的使用方法。 transition的使用方法 在Bootstrap中,transition指过渡动画效果,可以实现某些元素的…

    css 2023年6月10日
    00
  • JS 控制CSS样式表

    JS 控制 CSS 样式表的方式主要有两种:通过修改样式属性来修改元素样式,以及通过切换 CSS 类名来切换元素样式。下面分别给出具体的步骤和示例说明。 通过修改样式属性修改元素样式 获取需要修改样式的元素 可以通过 document.getElementById 、 document.getElementsByClassName 、 document.ge…

    css 2023年6月9日
    00
  • CSS伪类是什么?

    CSS伪类是指语法上并不存在的一个选择器,它是为了给某些特定状态的元素应用样式而出现的。在HTML中,伪类的语法是以一个冒号(:)来表示的。 以下是CSS中常用的伪类: :hover 伪类 当鼠标滑过一个元素时,会触发该元素的:hover伪类,我们可以设置hover伪类来改变元素的样式。 <style> a:hover{color: red;} …

    Web开发基础 2023年3月20日
    00
  • css3设置box-pack和box-align让div里面的元素垂直居中

    设置box-pack和box-align属性可以实现CSS3让div里面的元素垂直和水平居中,下面是详细的攻略: 首先,需要将容器的display属性设置为flex,表示启用flex布局。然后,将justify-content和align-items属性都设置为center,这样flex容器里的所有子元素都将垂直居中。 .container { displa…

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部