HTML5中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

HTML5中国 首页 资源下载 开发工具 查看内容

js+css炫酷3d立体卡通文字特效

2017-1-11 16:44| 发布者: admin| 查看: 348| 评论: 0

摘要: 这是一款效果使用纯js和CSS3制作的炫酷3D立体卡通文字特效。该特效通过js代码来克隆字母的内容,并通过 CSS text-shadow属性和transform属性将字母渲染为3D立体效果。 ...
简要教程

这是一款效果使用纯js和CSS3制作的炫酷3D立体卡通文字特效。该特效通过js代码来克隆字母的内容,并通过 CSS text-shadow属性和transform属性将字母渲染为3D立体效果。

 使用方法

 HTML结构
该3D立体文字特效的HTML代码非常简单,使用一个<div>l;来包裹文字即可
<div class="wrapper">
  <div class="content">
    Alphabet Magnet Text Styling
  </div>
</div>           
 CSS样式

该3D立体文字特效的CSS代码如下:

.content {
  font-family: 'Rubik';
  font-size: 6rem;
  font-weight: 900;
  letter-spacing: .04em;
  display: block;
  word-spacing: 3rem;
  line-height: 1.4;
  text-transform: uppercase;
}
.content div {
  display: inline;
}
.content span {
  display: inline-block;
}
.content span:hover {
  animation: wobble 200ms;
}
.content span:nth-child(1n) {
  color: #F18829;
  text-shadow: #ef7b11 1px 1px, #f7bd89 -1px -1px, #f37841 -2px -2px 6px, #f49d4f -2px -2px, #f49d4f -1px -2px, #f49d4f -1px -3px, #f49d4f -2px -4px, #f49d4f -2px -5px, #f49d4f -3px -6px, #F18829 -4px -7px, rgba(0, 0, 5, 0.4) 3px 4px 5px, rgba(0, 0, 5, 0.2) -3px -4px 5px;
  transform: rotate(-3deg);
}
.content span:nth-child(2n) {
  color: #00B9ED;
  text-shadow: #00a5d4 1px 1px, #54d9ff -1px -1px, #08f2ff -2px -2px 6px, #17ccff -2px -2px, #17ccff -1px -2px, #17ccff -1px -3px, #17ccff -2px -4px, #17ccff -2px -5px, #17ccff -3px -6px, #00B9ED -4px -7px, rgba(0, 0, 5, 0.4) 3px 4px 5px, rgba(0, 0, 5, 0.2) -3px -4px 5px;
  transform: rotate(3deg) translateY(4%);
}
.content span:nth-child(3n) {
  color: #ED5053;
  text-shadow: #eb393c 1px 1px, #f7acae -1px -1px, #ef6780 -2px -2px 6px, #f17577 -2px -2px, #f17577 -1px -2px, #f17577 -1px -3px, #f17577 -2px -4px, #f17577 -2px -5px, #f17577 -3px -6px, #ED5053 -4px -7px, rgba(0, 0, 5, 0.4) 3px 4px 5px, rgba(0, 0, 5, 0.2) -3px -4px 5px;
  transform: rotate(-3deg);
}
.content span:nth-child(4n) {
  color: #00AF4F;
  text-shadow: #009643 1px 1px, #16ff7f -1px -1px, #00c939 -2px -2px 6px, #00d861 -2px -2px, #00d861 -1px -2px, #00d861 -1px -3px, #00d861 -2px -4px, #00d861 -2px -5px, #00d861 -3px -6px, #00AF4F -4px -7px, rgba(0, 0, 5, 0.4) 3px 4px 5px, rgba(0, 0, 5, 0.2) -3px -4px 5px;
  transform: rotate(-2deg);
}
.content span:nth-child(5n) {
  color: #8E509F;
  text-shadow: #7f478e 1px 1px, #ba8fc6 -1px -1px, #8e5cad -2px -2px 6px, #a266b2 -2px -2px, #a266b2 -1px -2px, #a266b2 -1px -3px, #a266b2 -2px -4px, #a266b2 -2px -5px, #a266b2 -3px -6px, #8E509F -4px -7px, rgba(0, 0, 5, 0.4) 3px 4px 5px, rgba(0, 0, 5, 0.2) -3px -4px 5px;
  transform: rotate(3deg) translateY(-2%);
}
.content span:nth-child(6n) {
  color: #F9DE00;
  text-shadow: #e0c700 1px 1px, #ffee60 -1px -1px, #ffbe14 -2px -2px 6px, #ffe723 -2px -2px, #ffe723 -1px -2px, #ffe723 -1px -3px, #ffe723 -2px -4px, #ffe723 -2px -5px, #ffe723 -3px -6px, #F9DE00 -4px -7px, rgba(0, 0, 5, 0.4) 3px 4px 5px, rgba(0, 0, 5, 0.2) -3px -4px 5px;
  transform: rotate(5deg) translateY(1%);
}
 
@keyframes wobble {
  50% {
    transform: translate(2%, 2%);
  }
}            
 JavaScript

JS代码的左右主要是克隆字母的内容。代码如下:

'use strict';
var container = document.querySelector('.content');
var content = container.innerText;
 
function formatContent(content, container) {
  var contentArray = content.split(' ');
  var formattedContent = document.createElement('div');
  contentArray.map(function (word) {
    formattedContent.appendChild(createWord(word));
  });
  console.log(contentArray);
 
  container.replaceChild(formattedContent, container.firstChild);
};
 
function createWord(characters) {
  var word = document.createElement('div');
  var wordArray = characters.split('');
  wordArray.map(function (char) {
    word.appendChild(formatCharacter(char));
  });
  word.appendChild(formatCharacter(' '));
  return word;
}
 
function formatCharacter(text) {
  var text = text === ' ' ? ' ' : text;
  var character = document.createElement('span');
  character.innerHTML = text;
  return character;
}
 
formatContent(content, container);                  

鲜花

握手

雷人

路过

鸡蛋

最新评论

HTML5中国微信

小黑屋|关于我们|HTML5论坛|友情链接|手机版|HTML5中国 ( 京ICP备11006447号 京公网安备:11010802018489号  

GMT+8, 2017-1-21 16:25

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

返回顶部