{"id":6379,"date":"2026-03-28T14:30:59","date_gmt":"2026-03-28T05:30:59","guid":{"rendered":"https:\/\/route-zero.com\/recruit\/?post_type=route&#038;p=6379"},"modified":"2026-09-28T14:31:14","modified_gmt":"2026-09-28T05:31:14","slug":"css-text-animation-fade-typing","status":"publish","type":"route","link":"https:\/\/route-zero.com\/recruit\/route\/6379\/","title":{"rendered":"CSS\u6587\u5b57\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u4f5c\u308a\u65b9\uff5c\u30d5\u30a7\u30fc\u30c9\u30fb1\u6587\u5b57\u305a\u3064\u30fb\u30bf\u30a4\u30d4\u30f3\u30b0"},"content":{"rendered":"<p>CSS\u3067\u6587\u5b57\u3092\u52d5\u304b\u3059\u65b9\u6cd5\u306f1\u3064\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u3075\u308f\u3063\u3068\u8868\u793a\u3059\u308b\u306e\u304b\u30011\u6587\u5b57\u305a\u3064\u898b\u305b\u308b\u306e\u304b\u3001\u30bf\u30a4\u30d4\u30f3\u30b0\u306e\u3088\u3046\u306b\u6a2a\u3078\u5e83\u3052\u308b\u306e\u304b\u3067\u5b9f\u88c5\u304c\u5909\u308f\u308a\u307e\u3059\u3002\u307e\u305a\u76ee\u7684\u3092\u5206\u3051\u308b\u3068\u3001\u5fc5\u8981\u306aCSS\u304c\u304b\u306a\u308a\u30b7\u30f3\u30d7\u30eb\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<h2>\u307e\u305a\u4f7f\u3044\u5206\u3051\uff1a\u6587\u5b57\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f\u76ee\u7684\u3067\u9078\u3076<\/h2>\n<table>\n<thead>\n<tr>\n<th>\u898b\u305b\u65b9<\/th>\n<th>\u4e3b\u306aCSS<\/th>\n<th>\u5411\u3044\u3066\u3044\u308b\u5834\u9762<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u30d5\u30a7\u30fc\u30c9<\/td>\n<td>opacity + @keyframes<\/td>\n<td>\u898b\u51fa\u3057\u3084\u77ed\u3044\u30b3\u30d4\u30fc\u3092\u81ea\u7136\u306b\u8868\u793a<\/td>\n<\/tr>\n<tr>\n<td>1\u6587\u5b57\u305a\u3064<\/td>\n<td>span + animation-delay<\/td>\n<td>\u30ed\u30b4\u3084\u77ed\u3044\u30ad\u30e3\u30c3\u30c1\u30b3\u30d4\u30fc<\/td>\n<\/tr>\n<tr>\n<td>\u30bf\u30a4\u30d4\u30f3\u30b0\u98a8<\/td>\n<td>width + steps()<\/td>\n<td>\u56fa\u5b9a\u9577\u306e\u77ed\u3044\u30c6\u30ad\u30b9\u30c8\u3092\u6bb5\u968e\u8868\u793a<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u52d5\u7684\u306b\u5909\u308f\u308b\u9577\u6587\u3084\u3001\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c\u306b\u5fdc\u3058\u3066\u8907\u96d1\u306b\u9806\u5e8f\u3092\u5909\u3048\u308b\u5834\u5408\u306f\u3001CSS\u3060\u3051\u306b\u5bc4\u305b\u305aJavaScript\u5074\u3067\u72b6\u614b\u3092\u7ba1\u7406\u3057\u305f\u65b9\u304c\u4fdd\u5b88\u3057\u3084\u3059\u3044\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<p>\uff08@keyframes\u3068animation\u306e\u57fa\u672c\u304b\u3089\u78ba\u8a8d\u3057\u305f\u3044\u5834\u5408\u306b\u3064\u3044\u3066\u306f\u300e<a href=\"https:\/\/route-zero.com\/recruit\/route\/901\/\">\u3010\u7c21\u5358\u306b\u8a66\u305b\u308b\u3011CSS\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u4ed5\u7d44\u307f\u3092\u5fb9\u5e95\u89e3\u8aac\uff01\u521d\u5fc3\u8005\u3067\u3082\u308f\u304b\u308b\u52d5\u304d\u306e\u4f5c\u308a\u65b9<\/a>\u300f\u3092\u3054\u53c2\u7167\u304f\u3060\u3055\u3044\uff09<\/p>\n<hr>\n<h2>\u30d5\u30a7\u30fc\u30c9\u8868\u793a\u306fopacity\u3068@keyframes\u3067\u4f5c\u308b<\/h2>\n<p>\u6700\u3082\u6271\u3044\u3084\u3059\u3044\u306e\u306f\u3001\u900f\u660e\u5ea6\u3092\u5909\u3048\u308b\u30d5\u30a7\u30fc\u30c9\u3067\u3059\u3002@keyframes\u3067\u958b\u59cb\u3068\u7d42\u4e86\u306e\u72b6\u614b\u3092\u5b9a\u7fa9\u3057\u3001\u5bfe\u8c61\u8981\u7d20\u3078animation\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<pre><code>&lt;p class=&quot;fade-text&quot;&gt;CSS\u3067\u6587\u5b57\u3092\u8868\u793a\u3059\u308b&lt;\/p&gt;\r\n\r\n&lt;style&gt;\r\n.fade-text {\r\n  opacity: 0;\r\n  animation: fade-in 700ms ease-out forwards;\r\n}\r\n\r\n@keyframes fade-in {\r\n  from {\r\n    opacity: 0;\r\n    transform: translateY(8px);\r\n  }\r\n  to {\r\n    opacity: 1;\r\n    transform: translateY(0);\r\n  }\r\n}\r\n&lt;\/style&gt;<\/code><\/pre>\n<p>forwards\u3092\u4ed8\u3051\u308b\u3068\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u7d42\u4e86\u5f8c\u3082\u6700\u7d42\u30ad\u30fc\u30d5\u30ec\u30fc\u30e0\u306e\u898b\u305f\u76ee\u3092\u7dad\u6301\u3067\u304d\u307e\u3059\u3002\u7e70\u308a\u8fd4\u3057\u304c\u4e0d\u8981\u306a\u6587\u7ae0\u3067\u306f\u3001\u307e\u305a1\u56de\u3060\u3051\u306e\u8868\u793a\u304b\u3089\u59cb\u3081\u308b\u3068\u8abf\u6574\u3057\u3084\u3059\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n<hr>\n<h2>1\u6587\u5b57\u305a\u3064\u8868\u793a\u3059\u308b\u306a\u3089\u6587\u5b57\u3092\u8981\u7d20\u3078\u5206\u3051\u3066\u9045\u5ef6\u3055\u305b\u308b<\/h2>\n<p>\u5404\u6587\u5b57\u306e\u958b\u59cb\u6642\u523b\u3092\u305a\u3089\u3057\u305f\u3044\u5834\u5408\u306f\u3001\u6587\u5b57\u3054\u3068\u306bspan\u3078\u5206\u3051\u3066animation-delay\u3092\u5909\u3048\u307e\u3059\u3002\u56fa\u5b9a\u30b3\u30d4\u30fc\u306a\u3089CSS\u3060\u3051\u3067\u3082\u7ba1\u7406\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><code>&lt;p class=&quot;char-text&quot; aria-label=&quot;HELLO&quot;&gt;\r\n  &lt;span class=&quot;char&quot; aria-hidden=&quot;true&quot;&gt;H&lt;\/span&gt;\r\n  &lt;span class=&quot;char&quot; aria-hidden=&quot;true&quot;&gt;E&lt;\/span&gt;\r\n  &lt;span class=&quot;char&quot; aria-hidden=&quot;true&quot;&gt;L&lt;\/span&gt;\r\n  &lt;span class=&quot;char&quot; aria-hidden=&quot;true&quot;&gt;L&lt;\/span&gt;\r\n  &lt;span class=&quot;char&quot; aria-hidden=&quot;true&quot;&gt;O&lt;\/span&gt;\r\n&lt;\/p&gt;\r\n\r\n&lt;style&gt;\r\n.char {\r\n  display: inline-block;\r\n  opacity: 0;\r\n  animation: char-in 400ms ease-out forwards;\r\n}\r\n.char:nth-child(2) { animation-delay: 80ms; }\r\n.char:nth-child(3) { animation-delay: 160ms; }\r\n.char:nth-child(4) { animation-delay: 240ms; }\r\n.char:nth-child(5) { animation-delay: 320ms; }\r\n\r\n@keyframes char-in {\r\n  from { opacity: 0; transform: translateY(6px); }\r\n  to { opacity: 1; transform: translateY(0); }\r\n}\r\n&lt;\/style&gt;<\/code><\/pre>\n<p>\u6587\u5b57\u6570\u304c\u983b\u7e41\u306b\u5909\u308f\u308b\u5834\u5408\u3001nth-child\u3092\u624b\u3067\u5897\u3084\u3057\u7d9a\u3051\u308b\u306e\u306f\u8ca0\u62c5\u3067\u3059\u3002\u305d\u306e\u5834\u5408\u306f\u3001JavaScript\u3084\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5074\u3067\u6587\u5b57\u8981\u7d20\u3068\u9045\u5ef6\u5024\u3092\u751f\u6210\u3059\u308b\u65b9\u304c\u5411\u3044\u3066\u3044\u307e\u3059\u3002<\/p>\n<hr>\n<h2>\u30bf\u30a4\u30d4\u30f3\u30b0\u98a8\u306fsteps()\u3067\u6bb5\u968e\u7684\u306b\u5e45\u3092\u5e83\u3052\u308b<\/h2>\n<p>steps()\u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u9032\u884c\u3092\u6307\u5b9a\u3057\u305f\u6570\u306e\u533a\u9593\u306b\u5206\u5272\u3057\u307e\u3059\u3002\u5e45\u306e\u5909\u5316\u3068\u7d44\u307f\u5408\u308f\u305b\u308b\u3068\u3001\u6587\u5b57\u304c\u6bb5\u968e\u7684\u306b\u73fe\u308c\u308b\u30bf\u30a4\u30d4\u30f3\u30b0\u98a8\u8868\u73fe\u3092\u4f5c\u308c\u307e\u3059\u3002<\/p>\n<pre><code>&lt;p class=&quot;typing&quot;&gt;CSS animation&lt;\/p&gt;\r\n\r\n&lt;style&gt;\r\n.typing {\r\n  width: 13ch;\r\n  overflow: hidden;\r\n  white-space: nowrap;\r\n  border-right: 2px solid currentColor;\r\n  animation:\r\n    typing 2s steps(13, end) forwards,\r\n    caret 700ms step-end infinite;\r\n}\r\n\r\n@keyframes typing {\r\n  from { width: 0; }\r\n  to { width: 13ch; }\r\n}\r\n\r\n@keyframes caret {\r\n  50% { border-color: transparent; }\r\n}\r\n&lt;\/style&gt;<\/code><\/pre>\n<p>\u3053\u306e\u65b9\u6cd5\u306f\u56fa\u5b9a\u6587\u5b57\u5217\u307b\u3069\u6271\u3044\u3084\u3059\u304f\u3001\u6587\u5b57\u6570\u3068steps()\u306e\u5024\u3001\u5e45\u306e\u6307\u5b9a\u3092\u305d\u308d\u3048\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u30d5\u30a9\u30f3\u30c8\u3084\u6587\u5b57\u7a2e\u306b\u3088\u3063\u3066\u898b\u3048\u65b9\u304c\u5909\u308f\u308b\u305f\u3081\u3001\u5b9f\u969b\u306e\u8868\u793a\u74b0\u5883\u3067\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<h2>\u52d5\u304d\u3092\u6e1b\u3089\u3059\u8a2d\u5b9a\u3092\u7528\u610f\u3059\u308b<\/h2>\n<p>\u6587\u5b57\u306e\u79fb\u52d5\u3084\u70b9\u6ec5\u306f\u3001\u5229\u7528\u8005\u306b\u3088\u3063\u3066\u306f\u8ca0\u62c5\u306b\u306a\u308a\u307e\u3059\u3002prefers-reduced-motion\u3067\u52d5\u304d\u306e\u6291\u5236\u3092\u5e0c\u671b\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u5fc5\u9808\u3067\u306f\u306a\u3044\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u505c\u6b62\u307e\u305f\u306f\u5f31\u3081\u308b\u8a2d\u8a08\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><code>@media (prefers-reduced-motion: reduce) {\r\n  .fade-text,\r\n  .char,\r\n  .typing {\r\n    animation: none;\r\n    opacity: 1;\r\n    transform: none;\r\n    width: auto;\r\n    border-right: 0;\r\n  }\r\n}<\/code><\/pre>\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u305d\u306e\u3082\u306e\u304c\u60c5\u5831\u4f1d\u9054\u306b\u5fc5\u9808\u3067\u306a\u3044\u306a\u3089\u3001\u52d5\u304b\u306a\u3044\u72b6\u614b\u3067\u3082\u5185\u5bb9\u3092\u8aad\u3081\u308b\u3053\u3068\u3092\u512a\u5148\u3057\u307e\u3059\u3002<\/p>\n<h2>CSS\u3060\u3051\u3067\u8db3\u308a\u306a\u3044\u30b1\u30fc\u30b9\u3092\u898b\u5206\u3051\u308b<\/h2>\n<ul>\n<li>\u6587\u5b57\u5217\u304cAPI\u7d50\u679c\u306a\u3069\u3067\u6bce\u56de\u5909\u308f\u308b<\/li>\n<li>\u30e6\u30fc\u30b6\u30fc\u64cd\u4f5c\u3067\u518d\u751f\u30fb\u505c\u6b62\u30fb\u9806\u5e8f\u3092\u7d30\u304b\u304f\u5236\u5fa1\u3059\u308b<\/li>\n<li>\u8907\u6570\u8981\u7d20\u306e\u72b6\u614b\u3092\u540c\u671f\u3055\u305b\u308b<\/li>\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5b8c\u4e86\u3092\u6b21\u306e\u51e6\u7406\u6761\u4ef6\u3068\u3057\u3066\u4f7f\u3046<\/li>\n<\/ul>\n<p>\u3053\u306e\u3088\u3046\u306a\u5834\u5408\u306fJavaScript\u3067\u72b6\u614b\u3092\u6301\u3061\u3001CSS\u306f\u898b\u305f\u76ee\u306e\u5909\u5316\u3092\u62c5\u5f53\u3055\u305b\u308b\u3068\u8cac\u52d9\u3092\u5206\u3051\u3084\u3059\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n<p>\uff08\u307b\u304b\u306eCSS\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5b9f\u88c5\u4f8b\u3082\u78ba\u8a8d\u3057\u305f\u3044\u5834\u5408\u306b\u3064\u3044\u3066\u306f\u300e<a href=\"https:\/\/route-zero.com\/recruit\/route\/1091\/\">\u3010\u4fdd\u5b58\u7248\u3011Web\u5236\u4f5c\u3067\u4f7f\u3048\u308bCSS\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f310\u9078\uff5c\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\uff06\u4f7f\u3044\u65b9\u89e3\u8aac<\/a>\u300f\u3092\u3054\u53c2\u7167\u304f\u3060\u3055\u3044\uff09<\/p>\n<p>\uff08\u30b9\u30af\u30ed\u30fc\u30eb\u4f4d\u7f6e\u3068\u9023\u52d5\u3055\u305b\u305f\u3044\u5834\u5408\u306b\u3064\u3044\u3066\u306f\u300e<a href=\"https:\/\/route-zero.com\/recruit\/route\/1720\/\">CSS\u30b9\u30af\u30ed\u30fc\u30eb\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u5b8c\u5168\u89e3\u8aac\uff5cscroll-timeline\u3067JS\u4e0d\u8981\u306e\u8efd\u91cf\u6f14\u51fa\u3092\u5b9f\u73fe<\/a>\u300f\u3092\u3054\u53c2\u7167\u304f\u3060\u3055\u3044\uff09<\/p>\n<h2>\u307e\u3068\u3081\uff1a\u307e\u305a\u898b\u305b\u65b9\u3092\u6c7a\u3081\u3066\u304b\u3089CSS\u3092\u9078\u3076<\/h2>\n<ul>\n<li>\u81ea\u7136\u306b\u51fa\u3059\u306a\u3089opacity\u4e2d\u5fc3\u306e\u30d5\u30a7\u30fc\u30c9<\/li>\n<li>\u77ed\u3044\u56fa\u5b9a\u30b3\u30d4\u30fc\u306a\u3089\u6587\u5b57\u3054\u3068\u306edelay<\/li>\n<li>\u30bf\u30a4\u30d4\u30f3\u30b0\u98a8\u306a\u3089steps()\u3068\u5e45\u306e\u7d44\u307f\u5408\u308f\u305b<\/li>\n<li>\u52d5\u7684\u5236\u5fa1\u304c\u5897\u3048\u305f\u3089JavaScript\u3078\u5f79\u5272\u3092\u5206\u3051\u308b<\/li>\n<li>prefers-reduced-motion\u3067\u52d5\u304d\u3092\u6e1b\u3089\u305b\u308b\u3088\u3046\u306b\u3059\u308b<\/li>\n<\/ul>\n<p>\u307e\u305a\u306f\u77ed\u3044\u898b\u51fa\u30571\u3064\u3067\u30d5\u30a7\u30fc\u30c9\u3092\u52d5\u304b\u3057\u3001\u6b21\u306b1\u6587\u5b57\u305a\u3064\u30fb\u30bf\u30a4\u30d4\u30f3\u30b0\u98a8\u3078\u5e83\u3052\u308b\u3068\u9055\u3044\u3092\u78ba\u8a8d\u3057\u3084\u3059\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n","protected":false},"featured_media":6380,"template":"","meta":{"ssp_meta_title":"CSS\u6587\u5b57\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u4f5c\u308a\u65b9\uff5c1\u6587\u5b57\u305a\u3064\u30fb\u30bf\u30a4\u30d4\u30f3\u30b0\u30fb\u30d5\u30a7\u30fc\u30c9","ssp_meta_description":"CSS\u3060\u3051\u3067\u6587\u5b57\u3092\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3055\u305b\u308b\u65b9\u6cd5\u3092\u5b9f\u4f8b\u3067\u89e3\u8aac\u3002\u30d5\u30a7\u30fc\u30c9\u30011\u6587\u5b57\u305a\u3064\u306e\u8868\u793a\u3001steps()\u3092\u4f7f\u3046\u30bf\u30a4\u30d4\u30f3\u30b0\u98a8\u8868\u73fe\u3001prefers-reduced-motion\u306b\u3088\u308b\u52d5\u304d\u306e\u6291\u5236\u307e\u3067\u6574\u7406\u3057\u307e\u3059\u3002","ssp_meta_keyword":"CSS \u6587\u5b57 \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3,CSS 1\u6587\u5b57\u305a\u3064,CSS \u30bf\u30a4\u30d4\u30f3\u30b0,CSS \u30d5\u30a7\u30fc\u30c9\u30a4\u30f3 \u6587\u5b57,CSS @keyframes,CSS steps,prefers-reduced-motion","ssp_meta_canonical":""},"route_category":[9],"_links":{"self":[{"href":"https:\/\/route-zero.com\/recruit\/wp-json\/wp\/v2\/route\/6379"}],"collection":[{"href":"https:\/\/route-zero.com\/recruit\/wp-json\/wp\/v2\/route"}],"about":[{"href":"https:\/\/route-zero.com\/recruit\/wp-json\/wp\/v2\/types\/route"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/route-zero.com\/recruit\/wp-json\/wp\/v2\/media\/6380"}],"wp:attachment":[{"href":"https:\/\/route-zero.com\/recruit\/wp-json\/wp\/v2\/media?parent=6379"}],"wp:term":[{"taxonomy":"route_category","embeddable":true,"href":"https:\/\/route-zero.com\/recruit\/wp-json\/wp\/v2\/route_category?post=6379"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}