<html>
<head>
<meta name="description" content="Reduced Reveal Stack">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Reduced Reveal Stack</title>
</head>
<body>
<div class="stack">
<div class="stack-pages">
<div class="stack-page">
<div>
<p>Used so that semantic flow of document doesn't need to be flipped altering the sequence then using flex-flow: column-reverse on flex container.</p>
<code><pre>
.stack-page:nth-child(1) {z-index: 999;}
.stack-page:nth-child(2) {z-index: 998;}
.stack-page:nth-child(3) {z-index: 997;}
.stack-page:nth-child(4) {z-index: 996;}
.stack-page:nth-child(5) {z-index: 995;}
.stack-page:nth-child(6) {z-index: 994;}
.stack-page:nth-child(7) {z-index: 993;}
.stack-page:nth-child(8) {z-index: 992;}
.stack-page:nth-child(9) {z-index: 991;}
/* ... */
.stack-end {z-index: 1;}
</pre></code>
</div>
</div>
<div class="stack-page">Page 2</div>
<div class="stack-page">Page 3</div>
<div class="stack-page">Page 4</div>
<div class="stack-page">Page 5</div>
<div class="stack-page">Page 6</div>
</div>
<div class="stack-end">After</div>
</div>
</body>
</html>
@import url('https://necolas.github.io/normalize.css/7.0.0/normalize.css');
:root {
--stackHeight: 300px;
}
*,
*::before,
*::after {
box-sizing: inherit;
flex-shrink: 0;
flex-shrink: 0;
}
html {
box-sizing: border-box;
}
.stack {
height: var(--stackHeight);
overflow-y: scroll;
overflow-scrolling: touch;
}
.stack-page,
.stack-end {
padding: .75em;
}
.stack-page {
height: var(--stackHeight);
background: #f90;
display: flex;
flex-flow: column;
justify-content: flex-end;
box-shadow: 0 4px 2px rgba(0,0,0,.25);
position: sticky;
position: sticky;
bottom: 0;
}
/* Using z-index setup so that semantic flow of document doesn't need to be reversed within a flex container with flex-direction: column-reverse */
.stack-page:nth-child(1) {z-index: 999;}
.stack-page:nth-child(2) {z-index: 998;}
.stack-page:nth-child(3) {z-index: 997;}
.stack-page:nth-child(4) {z-index: 996;}
.stack-page:nth-child(5) {z-index: 995;}
.stack-page:nth-child(6) {z-index: 994;}
.stack-page:nth-child(7) {z-index: 993;}
.stack-page:nth-child(8) {z-index: 992;}
.stack-page:nth-child(9) {z-index: 991;}
/* ... */
.stack-end {z-index: 1;}
/* only use this if there is 'stack-after' block */
.stack::after {
content: '';
display: block;
height: var(--stackHeight);
visibility: hidden;
}
.stack-end {
position: sticky;
position: sticky;
top: 0;
min-height: calc(1.5 * var(--stackHeight));
margin-top: calc(-1 * var(--stackHeight));
background: #6cd;
padding-top: calc(var(--stackHeight) - 2em);
}
code {
font-size: .75em;
}
Output
You can jump to the latest bin by adding /latest
to your URL
Keyboard Shortcuts
Shortcut | Action |
---|---|
ctrl + [num] | Toggle nth panel |
ctrl + 0 | Close focused panel |
ctrl + enter | Re-render output. If console visible: run JS in console |
Ctrl + l | Clear the console |
ctrl + / | Toggle comment on selected lines |
ctrl + ] | Indents selected lines |
ctrl + [ | Unindents selected lines |
tab | Code complete & Emmet expand |
ctrl + shift + L | Beautify code in active panel |
ctrl + s | Save & lock current Bin from further changes |
ctrl + shift + s | Open the share options |
ctrl + y | Archive Bin |
Complete list of JS Bin shortcuts |
JS Bin URLs
URL | Action |
---|---|
/ | Show the full rendered output. This content will update in real time as it's updated from the /edit url. |
/edit | Edit the current bin |
/watch | Follow a Code Casting session |
/embed | Create an embeddable version of the bin |
/latest | Load the very latest bin (/latest goes in place of the revision) |
/[username]/last | View the last edited bin for this user |
/[username]/last/edit | Edit the last edited bin for this user |
/[username]/last/watch | Follow the Code Casting session for the latest bin for this user |
/quiet | Remove analytics and edit button from rendered output |
.js | Load only the JavaScript for a bin |
.css | Load only the CSS for a bin |
Except for username prefixed urls, the url may start with http://jsbin.com/abc and the url fragments can be added to the url to view it differently. |