我真的想让一段文字闪烁的老派风格没有使用 javascript 或文本装饰。
没有过渡,只有 * 眨眼 * ,* 眨眼 * ,* 眨眼 * !
这不同于 这个问题,因为我要求 眨眼没有连续的过渡,而 OP 的其他问题问如何 更换眨眼 连续过渡
给你看个小把戏。
作为阿肯色州的 说,你可以使用 CSS3转场。但他的解决方案看起来不同于原来的标签。
你真正需要做的是:
@keyframes blink { 50% { opacity: 0.0; } } .blink { animation: blink 1s step-start 0s infinite; }
<span class="blink">Blink</span>
JSfiddle Demo
试试这个 CSS
@keyframes blink { 0% { color: red; } 100% { color: black; } } @-webkit-keyframes blink { 0% { color: red; } 100% { color: black; } } .blink { -webkit-animation: blink 1s linear infinite; -moz-animation: blink 1s linear infinite; animation: blink 1s linear infinite; }
This is <span class="blink">blink</span>
You need browser/vendor specific prefixes: http://jsfiddle.net/es6e6/1/.
最初的网景 <blink>有一个80% 的占空比,这个占空比非常接近,尽管真正的 <blink>只影响文本:
<blink>
.blink { animation: blink-animation 1s steps(5, start) infinite; -webkit-animation: blink-animation 1s steps(5, start) infinite; } @keyframes blink-animation { to { visibility: hidden; } } @-webkit-keyframes blink-animation { to { visibility: hidden; } }
This is <span class="blink">blinking</span> text.
You can find more info about Keyframe Animations here.
我会为此下地狱的:
=keyframes($name) @-webkit-keyframes #{$name} @content @-moz-keyframes #{$name} @content @-ms-keyframes #{$name} @content @keyframes #{$name} @content +keyframes(blink) 25% zoom: 1 opacity: 1 65% opacity: 1 66% opacity: 0 100% opacity: 0 body font-family: sans-serif font-size: 4em background: #222 text-align: center .blink color: rgba(#fff, 0.9) +animation(blink 1s 0s reverse infinite) +transform(translateZ(0)) .table display: table height: 5em width: 100% vertical-align: middle .cell display: table-cell width: 100% height: 100% vertical-align: middle
Http://codepen.io/anon/pen/kagxc (波旁威士忌)
实际上不需要 visibility或者 opacity——你可以简单地使用 color,它的好处是可以保持任何对文本的“眨眼”:
visibility
opacity
color
blink { display: inline; color: inherit; animation: blink 1s steps(1) infinite; -webkit-animation: blink 1s steps(1) infinite; } @keyframes blink { 50% { color: transparent; } } @-webkit-keyframes blink { 50% { color: transparent; } }
Here is some text, <blink>this text will blink</blink>, this will not.
Fiddle: http://jsfiddle.net/2r8JL/
另一种变化
.blink { -webkit-animation: blink 1s step-end infinite; animation: blink 1s step-end infinite; } @-webkit-keyframes blink { 50% { visibility: hidden; }} @keyframes blink { 50% { visibility: hidden; }}
请为您的代码找到以下解决方案。
@keyframes blink { 50% { color: transparent; } } .loader__dot { animation: 1s blink infinite; } .loader__dot:nth-child(2) { animation-delay: 250ms; } .loader__dot:nth-child(3) { animation-delay: 500ms; }
Loading <span class="loader__dot">.</span><span class="loader__dot">.</span><span class="loader__dot">.</span>
它在我的情况下工作,闪烁文字在1的间隔。
.blink_me { color:#e91e63; font-size:140%; font-weight:bold; padding:0 20px 0 0; animation: blinker 1s linear infinite; } @keyframes blinker { 50% { opacity: 0.4; } }
如果你想要一些辉光效果使用这个
@keyframes blink { 50% { opacity: 0.0; } } @-webkit-keyframes blink { 50% { opacity: 0.0; } } atom-text-editor::shadow .bracket-matcher .region { border:none; background-color: rgba(195,195,255,0.1); border-bottom: 1px solid rgb(155,155,255); box-shadow: 0px 0px 9px 4px rgba(155,155,255,0.1); border-radius: 3px; animation: blink 2s steps(115, start) infinite; -webkit-animation: blink 2s steps(115, start) infinite; }
如果你想要光滑闪烁的文字或类似的东西,你可以使用以下代码:
.blinking { -webkit-animation: 1s blink ease infinite; -moz-animation: 1s blink ease infinite; -ms-animation: 1s blink ease infinite; -o-animation: 1s blink ease infinite; animation: 1s blink ease infinite; } @keyframes "blink" { from, to { opacity: 0; } 50% { opacity: 1; } } @-moz-keyframes blink { from, to { opacity: 0; } 50% { opacity: 1; } } @-webkit-keyframes "blink" { from, to { opacity: 0; } 50% { opacity: 1; } } @-ms-keyframes "blink" { from, to { opacity: 0; } 50% { opacity: 1; } } @-o-keyframes "blink" { from, to { opacity: 0; } 50% { opacity: 1; } }
<span class="blinking">I am smoothly blinking</span>