Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URL's added here will be added as <link>s in order, and before the CSS in the editor. If you link to another Pen, it will include the CSS from that Pen. If the preprocessor matches, it will attempt to combine them before processing.

+ add another resource

JavaScript

Babel includes JSX processing.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Packages

Add Packages

Search for and use JavaScript packages from npm here. By selecting a package, an import statement will be added to the top of the JavaScript editor for this package.

Behavior

Save Automatically?

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

Format on Save

If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.

Editor Settings

Code Indentation

Want to change your Syntax Highlighting theme, Fonts and more?

Visit your global Editor Settings.

HTML

              
                <div class="content">
  <p>Content goes here</p>
  <br />
  <button id="toggle">Toggle Copy</button>
</div>
<footer>
	I'm a sticky footer
</footer>
              
            
!

CSS

              
                * {
  margin: 0;
  padding: 0;
  font-family: Roboto,"Helvetica Neue",Arial,sans-serif;
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  color: #fff;
}
.content {
  background: #FFD166;
  flex: 1 0 auto;
  padding: 2rem;
  width: 50%;
  margin: 0 auto;
}
footer {
  background: #EF476F;
  padding: 2rem;
}
button {
  padding: 1rem;
}
              
            
!

JS

              
                const button = document.getElementById("toggle");
const content = document.querySelector("p");
let toggled = false;
button.addEventListener("click", function() {
  toggled = !toggled;
  console.log(toggled);
    if (toggled) {
    content.innerHTML = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis tincidunt lacus ut turpis blandit, vel dictum augue suscipit. Curabitur dolor lorem, posuere eget maximus ut, laoreet at felis. Duis tempor, metus et pellentesque dignissim, turpis nisi luctus ipsum, ut tempor urna nisi sed nisi. Fusce non lacus non quam lacinia ultrices. Curabitur lorem nisi, sollicitudin nec odio non, congue convallis libero. Aliquam erat volutpat. Donec non quam pellentesque, feugiat elit ut, ornare velit. Etiam feugiat velit at lorem volutpat, sed consectetur odio efficitur. Fusce ut erat velit. Nullam mauris purus, congue ac libero et, condimentum auctor lectus. Nulla ultricies porta scelerisque.<br />Vivamus dictum nec odio sit amet viverra. Donec pharetra ornare ex, eget posuere ex bibendum suscipit. Sed non nunc ac mauris mattis ullamcorper id sed elit. Vivamus ultrices luctus ante et tempor. Sed efficitur tellus vitae metus mattis, eget eleifend dolor viverra. Morbi sit amet nisi eros. Praesent dignissim massa eu risus tincidunt, ut tempus purus sollicitudin.<br />Donec eget metus auctor, lobortis libero a, accumsan neque. Morbi sit amet dignissim urna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed at augue rhoncus, sollicitudin odio quis, malesuada purus. Fusce pretium lorem id tellus tempus, id commodo erat tincidunt. Ut facilisis elit sodales mauris vulputate, quis vulputate massa viverra. Donec quis eros erat. Sed ornare elit eget lectus vestibulum fringilla. Curabitur condimentum pharetra bibendum. Donec rutrum dui sem, nec luctus nisi maximus vitae.<br />Aenean venenatis massa tempus gravida dictum. Donec pellentesque vestibulum est non consectetur. Nulla justo ex, ultricies in eleifend non, rhoncus at leo. Etiam consectetur est quis malesuada maximus. Mauris sed nulla in justo varius euismod. Nulla elementum elementum rhoncus. Nam tempor, erat nec dignissim tincidunt, arcu magna vestibulum tortor, ac vestibulum ligula dui ut sapien. Proin in odio rutrum, volutpat ligula sed, feugiat est. Morbi tempor finibus erat, ac venenatis turpis volutpat at. Vivamus vitae libero sit amet nisl tristique rutrum. In condimentum laoreet quam, eu imperdiet enim placerat et. Fusce a tellus interdum, varius turpis eu, volutpat nunc.<br />Pellentesque lobortis posuere quam, in luctus est. Donec venenatis neque sit amet dui mollis, a ornare nisl tristique. Fusce urna enim, semper non lacinia ut, hendrerit scelerisque neque. Etiam dolor nunc, sodales ut suscipit sed, egestas eu odio. Duis feugiat tempus leo ut tincidunt. Morbi augue neque, fringilla vitae tellus sit amet, rutrum tincidunt lacus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Proin volutpat blandit enim, in faucibus tellus placerat sit amet. Nullam rhoncus molestie mauris nec pellentesque. Donec eget elit ut nisl sollicitudin tempor vitae et purus.<br />Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis tincidunt lacus ut turpis blandit, vel dictum augue suscipit. Curabitur dolor lorem, posuere eget maximus ut, laoreet at felis. Duis tempor, metus et pellentesque dignissim, turpis nisi luctus ipsum, ut tempor urna nisi sed nisi. Fusce non lacus non quam lacinia ultrices. Curabitur lorem nisi, sollicitudin nec odio non, congue convallis libero. Aliquam erat volutpat. Donec non quam pellentesque, feugiat elit ut, ornare velit. Etiam feugiat velit at lorem volutpat, sed consectetur odio efficitur. Fusce ut erat velit. Nullam mauris purus, congue ac libero et, condimentum auctor lectus. Nulla ultricies porta scelerisque.<br />Vivamus dictum nec odio sit amet viverra. Donec pharetra ornare ex, eget posuere ex bibendum suscipit. Sed non nunc ac mauris mattis ullamcorper id sed elit. Vivamus ultrices luctus ante et tempor. Sed efficitur tellus vitae metus mattis, eget eleifend dolor viverra. Morbi sit amet nisi eros. Praesent dignissim massa eu risus tincidunt, ut tempus purus sollicitudin.<br />Donec eget metus auctor, lobortis libero a, accumsan neque. Morbi sit amet dignissim urna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed at augue rhoncus, sollicitudin odio quis, malesuada purus. Fusce pretium lorem id tellus tempus, id commodo erat tincidunt. Ut facilisis elit sodales mauris vulputate, quis vulputate massa viverra. Donec quis eros erat. Sed ornare elit eget lectus vestibulum fringilla. Curabitur condimentum pharetra bibendum. Donec rutrum dui sem, nec luctus nisi maximus vitae.<br />Aenean venenatis massa tempus gravida dictum. Donec pellentesque vestibulum est non consectetur. Nulla justo ex, ultricies in eleifend non, rhoncus at leo. Etiam consectetur est quis malesuada maximus. Mauris sed nulla in justo varius euismod. Nulla elementum elementum rhoncus. Nam tempor, erat nec dignissim tincidunt, arcu magna vestibulum tortor, ac vestibulum ligula dui ut sapien. Proin in odio rutrum, volutpat ligula sed, feugiat est. Morbi tempor finibus erat, ac venenatis turpis volutpat at. Vivamus vitae libero sit amet nisl tristique rutrum. In condimentum laoreet quam, eu imperdiet enim placerat et. Fusce a tellus interdum, varius turpis eu, volutpat nunc.<br />Pellentesque lobortis posuere quam, in luctus est. Donec venenatis neque sit amet dui mollis, a ornare nisl tristique. Fusce urna enim, semper non lacinia ut, hendrerit scelerisque neque. Etiam dolor nunc, sodales ut suscipit sed, egestas eu odio. Duis feugiat tempus leo ut tincidunt. Morbi augue neque, fringilla vitae tellus sit amet, rutrum tincidunt lacus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Proin volutpat blandit enim, in faucibus tellus placerat sit amet. Nullam rhoncus molestie mauris nec pellentesque. Donec eget elit ut nisl sollicitudin tempor vitae et purus.";
  } else {
    content.innerHTML = "Content goes here";
  }
});

              
            
!
999px

Console