body { padding: 0; margin: 0; } /* all elements that will behave like a page */ .page { /* XXX make this browser-sized... */ display: inline-block; vertical-align: bottom; text-align: center; /* XXX need these to be the same as the magazine, for some reason does not work... * one way to go is to use a fixed page layout and scale things manually. */ width: 800px; height: 600px; /* change to relative units... */ margin-top: -300px; font-size: 12px; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -ms-transition: all 0.2s ease; transition: all 0.2s ease; } .page .content { display: inline-block; text-align: left; position: relative; /* these set the "safe" marks for page content */ width: 800px; height: 600px; top: 50%; /* change to relative units... */ margin-top: -300px; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -ms-transition: all 0.2s ease; transition: all 0.2s ease; } /* general layout */ .viewer { position: relative; /* this makes the magazine behave like a ribbon */ width: 100%; height: 100%; overflow: hidden; white-space: nowrap; font-size: 0px; background: gray; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -ms-transition: all 0.2s ease; transition: all 0.2s ease; } .scaler { position: relative; overflow: visible; -webkit-transform: scale(1); -moz-transform: scale(1); -o-transform: scale(1); -ms-transform: scale(1); transform: scale(1); -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -ms-transition: all 0.2s ease; transition: all 0.2s ease; } .aligner { position: relative; left: 50%; height: 100%; } .magazine { position: relative; display: inline-block; vertical-align: bottom; top: 50%; /* change to relative units... */ margin-left: -400px; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; -ms-transition: all 0.2s ease; transition: all 0.2s ease; } .magazine > .cover { background: white; } .article { width: auto; overflow: visible; white-space: nowrap; font-size: 0px; display: inline-block; } .article > .cover { background: white; } .page { background: silver; } /* modes */ .page-view-mode.viewer { background: white; } .page-view-mode .page .content { opacity: 0; } .page-view-mode .current.page .content { opacity: 1; } .page-view-mode.viewer.dragging { background: silver; } .page-view-mode.dragging .page .content { opacity: 0.5; } /* keep this at the end... */ .unanimated { -webkit-transition: none; -moz-transition: none; -o-transition: all 0 ease; -ms-transition: none; transition: none; }