【问题标题】:Curved Text using HTML & CSS使用 HTML 和 CSS 的弯曲文本
【发布时间】:2021-08-17 20:08:32
【问题描述】:

我知道已经有一篇关于弯曲文本的帖子,但我正在寻找一些具体的内容。

在此网页 (http://mrcthms.com/) 上,Marc 使用了一种很好的技术来为他的名字弯曲文本,但我终其一生都无法弄清楚如何复制该技术。这是我正在尝试的:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" x-undefined="" />
<title>Curved Text</title>
<style type="text/css">
span {
    display: inline-block;
    font-family: futura-pt, 'Helvetica Neue', sans-serif;
    font-size: 2.5em;
    font-weight: 300;
    margin: 1px;
}

.arced {
    display: block;
    text-shadow: rgba(0, 0, 0, 0.298039) 8px 8px;
    text-align: center;
    margin: 20px;
    padding: 50px 0 50px;
}

div span {
    text-shadow: rgba(0, 0, 0, 0.298039) 8px 8px;
    font-family: futura-pt, 'Helvetica Neue', sans-serif;
    font-size: 2.5em;
    font-weight: 300;
}

.arced > span:nth-child(1) {
    -webkit-transform:translateX(-1px) translateY(68px) rotate(-17deg);
    -webkit-transition:0s;
}
</style>
</head>

<body>
    <span class="arced">
        <span class="char1">S</span>
        <span class="char2">T</span>
        <span class="char2">E</span>
        <span class="char3">V</span>
        <span class="char4">E</span>
</span>
</body>

</html>

【问题讨论】:

    标签: html css


    【解决方案1】:

    我遇到了这个名为:CircleType.js 的解决方案。它提供了一种创建循环文本的简短而简单的方法。

    <h2 id="yourStyle">MARC THOMAS.</h2>
    
    $('#yourStyle').circleType({radius: 800});
    

    或者你可以使用lettering.js,它非常灵活。

    在此基础上使用 CSS/jQuery 添加您的过渡。希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      他对每个字母使用 CSS3 转换。例如,他名字的 HTML 如下:

      <span class="arced">
          <span class="char1">M</span>
          <span class="char2">a</span>
          <span class="char3">r</span>
          <span class="char4">c</span>
          ...
      </span>
      

      反过来,CSS如下:

      .show .hero h1 .arced > span:nth-child(1) {
          -webkit-transform: translateX(-1px) translateY(68px) rotate(-17deg);
             -moz-transform: translateX(-1px) translateY(68px) rotate(-17deg);
              -ms-transform: translateX(-1px) translateY(68px) rotate(-17deg);
               -o-transform: translateX(-1px) translateY(68px) rotate(-17deg);
                  transform: translateX(-1px) translateY(68px) rotate(-17deg);
      
          -webkit-transition-delay: 0s;
             -moz-transition-delay: 0s;
               -o-transition-delay: 0s;
                  transition-delay: 0s;
      }
      
      .show .hero h1 .arced > span:nth-child(2) {
          -webkit-transform: translateX(-3px) translateY(39px) rotate(-13deg);
             -moz-transform: translateX(-3px) translateY(39px) rotate(-13deg);
              -ms-transform: translateX(-3px) translateY(39px) rotate(-13deg);
               -o-transform: translateX(-3px) translateY(39px) rotate(-13deg);
                  transform: translateX(-3px) translateY(39px) rotate(-13deg);
      
          -webkit-transition-delay: .04s;
             -moz-transition-delay: .04s;
               -o-transition-delay: .04s;
                  transition-delay: .04s;
      }
      

      等等。

      【讨论】:

      • 当然... span:nth-child(1) 只指第一个字符...有时我是个白痴!谢谢!
      • 没问题,另一个大脑总是有帮助的!随意接受;)
      猜你喜欢
      • 2012-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-28
      • 1970-01-01
      相关资源
      最近更新 更多