内容简介:翻译自:https://stackoverflow.com/questions/26099709/make-flipclock-js-responsive
我一直试图让flipclock.js完全响应并且失败了.有没有人完成这个?如果是这样,我怎么能让它工作?感谢您的时间.我试图将所有内容转换为百分比,但这并不像我预期的那样有效.我正在使用这个插件的twitter bootstrap.
这是我的flipclock.js的css:
/* Get the bourbon mixin from http://bourbon.io */ /* Reset */ .countdown { postion:relative; width: 39%; } .flip-clock-wrapper { margin-left: 8% !important; max-width: 100%; font: normal .75em "Helvetica Neue", Helvetica, sans-serif; -webkit-user-select: none; } .flip-clock-wrapper * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; -o-box-sizing: border-box; box-sizing: border-box; -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; -ms-backface-visibility: hidden; -o-backface-visibility: hidden; backface-visibility: hidden; } .flip-clock-wrapper a { cursor: pointer; text-decoration: none; color: #ccc; } .flip-clock-wrapper a:hover { color: #fff; } .flip-clock-wrapper ul { list-style: none; } .flip-clock-wrapper.clearfix:before, .flip-clock-wrapper.clearfix:after { content: " "; display: table; } .flip-clock-wrapper.clearfix:after { clear: both; } .flip-clock-wrapper.clearfix { *zoom: 1; } .flip-clock-meridium { background: none !important; box-shadow: 0 0 0 !important; font-size: 300% !important; } .flip-clock-meridium a { color: #313333; } .flip-clock-wrapper { text-align: center; position: relative; width: 100%; margin: 100%; } .flip-clock-wrapper:before, .flip-clock-wrapper:after { content: " "; /* 1 */ display: table; /* 2 */ } .flip-clock-wrapper:after { clear: both; } /* Skeleton */ .flip-clock-wrapper ul { position: relative; float: left; margin: 0.7%; width: 8%; height: 1.1em; font-size: 7.2em; font-weight: bold; line-height: 7.2em; border-radius: 10%; background: #000; } .flip-clock-wrapper ul li { z-index: 1; position: absolute; left: 0; top: 0; width: 100%; height: 100%; line-height: 1em; text-decoration: none !important; } .flip-clock-wrapper ul li:first-child { z-index: 2; } .flip-clock-wrapper ul li a { display: block; height: 100%; -webkit-perspective: 100%; /*200px*/ -moz-perspective: 100%; perspective: 100%; margin: 0 !important; overflow: visible !important; cursor: default !important; } .flip-clock-wrapper ul li a div { z-index: 1; position: absolute; left: 0; width: 100%; height: 50%; font-size: 1em; overflow: hidden; outline: 1% solid transparent; } /*1px*/ .flip-clock-wrapper ul li a div .shadow { position: absolute; width: 100%; height: 100%; z-index: 2; } .flip-clock-wrapper ul li a div.up { -webkit-transform-origin: 50% 100%; -moz-transform-origin: 50% 100%; -ms-transform-origin: 50% 100%; -o-transform-origin: 50% 100%; transform-origin: 50% 100%; top: 0; } .flip-clock-wrapper ul li a div.up:after { content: ""; position: absolute; top: 1%;/*44px*/ left: 0; z-index: 5; width: 100%; height: .02em;/*3px*/ background-color: #000; background-color: rgba(0, 0, 0, 0.4); } .flip-clock-wrapper ul li a div.down { -webkit-transform-origin: 50% 0; -moz-transform-origin: 50% 0; -ms-transform-origin: 50% 0; -o-transform-origin: 50% 0; transform-origin: 50% 0; bottom: 0; border-bottom-left-radius: 1%;/*6px*/ border-bottom-right-radius: 1%;/*6px*/ } .flip-clock-wrapper ul li a div div.inn { position: absolute; left: 0; z-index: 1; width: 100%; height: 200%; color: #ccc; text-shadow: 0 20% 3% #000; /* 0 1px 2px #000*/ text-align: center; background-color: #333; border-radius: 9%; /* 0 1px 2px #000*/ font-size: 1em; } /* 70px*/ .flip-clock-wrapper ul li a div.up div.inn { top: 0; } .flip-clock-wrapper ul li a div.down div.inn { bottom: 0; } /* PLAY */ .flip-clock-wrapper ul.play li.flip-clock-before { z-index: 3; } .flip-clock-wrapper .flip { box-shadow: 0 2% 6% rgba(0, 0, 0, 0.7); } /* 0 2px 5px rgba(0, 0, 0, 0.7);*/ .flip-clock-wrapper ul.play li.flip-clock-active { -webkit-animation: asd 0.5s 0.5s linear both; -moz-animation: asd 0.5s 0.5s linear both; animation: asd 0.5s 0.5s linear both; z-index: 5; } .flip-clock-divider { float: left; display: inline-block; position: relative; width: 3%; /* 20px*/ height: 9em; } /* 100px*/ .flip-clock-divider:first-child { width: 0; } .flip-clock-dot { display: block; background: #323434; width: 50%;/* 10px*/ height: 1em; /* 10px*/ position: absolute; border-radius: 50%; box-shadow: 0 0 3% rgba(0, 0, 0, 0.5); left: 20%; } /* 5px*/ .flip-clock-divider .flip-clock-label { position: absolute; top: -1.5em; right: -7.5em; /* 86px*/ color: black; text-shadow: none; } .flip-clock-divider.minutes .flip-clock-label { right: -7.6em; } /* 88px*/ .flip-clock-divider.seconds .flip-clock-label { right: -7.9em; } /* 88px*/ .flip-clock-dot.top { top: 2.4em; } /* 30px*/ .flip-clock-dot.bottom { bottom: 2.4em; } /* 30px*/ @-webkit-keyframes asd { 0% { z-index: 2; } 20% { z-index: 4; } 100% { z-index: 4; } } @-moz-keyframes asd { 0% { z-index: 2; } 20% { z-index: 4; } 100% { z-index: 4; } } @-o-keyframes asd { 0% { z-index: 2; } 20% { z-index: 4; } 100% { z-index: 4; } } @keyframes asd { 0% { z-index: 2; } 20% { z-index: 4; } 100% { z-index: 4; } } .flip-clock-wrapper ul.play li.flip-clock-active .down { z-index: 2; -webkit-animation: turn 0.5s 0.5s linear both; -moz-animation: turn 0.5s 0.5s linear both; animation: turn 0.5s 0.5s linear both; } @-webkit-keyframes turn { 0% { -webkit-transform: rotateX(90deg); } 100% { -webkit-transform: rotateX(0deg); } } @-moz-keyframes turn { 0% { -moz-transform: rotateX(90deg); } 100% { -moz-transform: rotateX(0deg); } } @-o-keyframes turn { 0% { -o-transform: rotateX(90deg); } 100% { -o-transform: rotateX(0deg); } } @keyframes turn { 0% { transform: rotateX(90deg); } 100% { transform: rotateX(0deg); } } .flip-clock-wrapper ul.play li.flip-clock-before .up { z-index: 2; -webkit-animation: turn2 0.5s linear both; -moz-animation: turn2 0.5s linear both; animation: turn2 0.5s linear both; } @-webkit-keyframes turn2 { 0% { -webkit-transform: rotateX(0deg); } 100% { -webkit-transform: rotateX(-90deg); } } @-moz-keyframes turn2 { 0% { -moz-transform: rotateX(0deg); } 100% { -moz-transform: rotateX(-90deg); } } @-o-keyframes turn2 { 0% { -o-transform: rotateX(0deg); } 100% { -o-transform: rotateX(-90deg); } } @keyframes turn2 { 0% { transform: rotateX(0deg); } 100% { transform: rotateX(-90deg); } } .flip-clock-wrapper ul li.flip-clock-active { z-index: 3; } /* SHADOW */ .flip-clock-wrapper ul.play li.flip-clock-before .up .shadow { background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, black 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, black)); background: linear, top, rgba(0, 0, 0, 0.1) 0%, black 100%; background: -o-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, black 100%); background: -ms-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, black 100%); background: linear, to bottom, rgba(0, 0, 0, 0.1) 0%, black 100%; -webkit-animation: show 0.5s linear both; -moz-animation: show 0.5s linear both; animation: show 0.5s linear both; } .flip-clock-wrapper ul.play li.flip-clock-active .up .shadow { background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, black 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, black)); background: linear, top, rgba(0, 0, 0, 0.1) 0%, black 100%; background: -o-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, black 100%); background: -ms-linear-gradient(top, rgba(0, 0, 0, 0.1) 0%, black 100%); background: linear, to bottom, rgba(0, 0, 0, 0.1) 0%, black 100%; -webkit-animation: hide 0.5s 0.3s linear both; -moz-animation: hide 0.5s 0.3s linear both; animation: hide 0.5s 0.3s linear both; } /*DOWN*/ .flip-clock-wrapper ul.play li.flip-clock-before .down .shadow { background: -moz-linear-gradient(top, black 0%, rgba(0, 0, 0, 0.1) 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, black), color-stop(100%, rgba(0, 0, 0, 0.1))); background: linear, top, black 0%, rgba(0, 0, 0, 0.1) 100%; background: -o-linear-gradient(top, black 0%, rgba(0, 0, 0, 0.1) 100%); background: -ms-linear-gradient(top, black 0%, rgba(0, 0, 0, 0.1) 100%); background: linear, to bottom, black 0%, rgba(0, 0, 0, 0.1) 100%; -webkit-animation: show 0.5s linear both; -moz-animation: show 0.5s linear both; animation: show 0.5s linear both; } .flip-clock-wrapper ul.play li.flip-clock-active .down .shadow { background: -moz-linear-gradient(top, black 0%, rgba(0, 0, 0, 0.1) 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, black), color-stop(100%, rgba(0, 0, 0, 0.1))); background: linear, top, black 0%, rgba(0, 0, 0, 0.1) 100%; background: -o-linear-gradient(top, black 0%, rgba(0, 0, 0, 0.1) 100%); background: -ms-linear-gradient(top, black 0%, rgba(0, 0, 0, 0.1) 100%); background: linear, to bottom, black 0%, rgba(0, 0, 0, 0.1) 100%; -webkit-animation: hide 0.5s 0.3s linear both; -moz-animation: hide 0.5s 0.3s linear both; animation: hide 0.5s 0.2s linear both; } @-webkit-keyframes show { 0% { opacity: 0; } 100% { opacity: 1; } } @-moz-keyframes show { 0% { opacity: 0; } 100% { opacity: 1; } } @-o-keyframes show { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes show { 0% { opacity: 0; } 100% { opacity: 1; } } @-webkit-keyframes hide { 0% { opacity: 1; } 100% { opacity: 0; } } @-moz-keyframes hide { 0% { opacity: 1; } 100% { opacity: 0; } } @-o-keyframes hide { 0% { opacity: 1; } 100% { opacity: 0; } } @keyframes hide { 0% { opacity: 1; } 100% { opacity: 0; } }
试试这个 –
您可以控制翻盖时钟的大小(参见 – https://github.com/objectivehtml/FlipClock/issues/13 )
通过在你的CSS中创建新类(尽管更好地使用sass):
.your-clock{ zoom: 0.5; -moz-transform: scale(0.5) }
知道这一点后,通过使用sass,您可以创建mixin来控制缩放和-moz-transform按屏幕大小
例如,在sass中创建一个包含的mixin文件 –
// Responsive mixins =screen-xs @media all and (max-width: 320px) @content =screen-sm @media all and (max-width: 479px) @content =screen-md @media all and (max-width: 768px) @content =screen-lg @media all and (max-width: 900px) @content =screen-xl @media all and (max-width: 1300px) @content
现在只需将它添加到您的flipclock类,以按屏幕大小控制缩放:
.myflipclock zoom: 0.8 -moz-transform: scale(0.8) +screen-md zoom: 0.6 -moz-transform: scale(0.6) +screen-sm zoom: 0.45 -moz-transform: scale(0.45)
等等…
希望能帮助到你
翻译自:https://stackoverflow.com/questions/26099709/make-flipclock-js-responsive
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。