HTML preprocessors can make writing HTML more powerful or convenient. For instance, Markdown is designed to be easier to write and read for text documents and you could write a loop in Pug.
In CodePen, whatever you write in the HTML editor is what goes within the <body>
tags in a basic HTML5 template. So you don't have access to higher-up elements like the <html>
tag. If you want to add classes there that can affect the whole document, this is the place to do it.
In CodePen, whatever you write in the HTML editor is what goes within the <body>
tags in a basic HTML5 template. If you need things in the <head>
of the document, put that code here.
The resource you are linking to is using the 'http' protocol, which may not work when the browser is using https.
CSS preprocessors help make authoring CSS easier. All of them offer things like variables and mixins to provide convenient abstractions.
It's a common practice to apply CSS to a page that styles elements such that they are consistent across all browsers. We offer two of the most popular choices: normalize.css and a reset. Or, choose Neither and nothing will be applied.
To get the best cross-browser support, it is a common practice to apply vendor prefixes to CSS properties and values that require them to work. For instance -webkit-
or -moz-
.
We offer two popular choices: Autoprefixer (which processes your CSS server-side) and -prefix-free (which applies prefixes via a script, client-side).
Any URLs added here will be added as <link>
s in order, and before the CSS in the editor. You can use the CSS from another Pen by using its URL and the proper URL extension.
You can apply CSS to your Pen from any stylesheet on the web. Just put a URL to it here and we'll apply it, in the order you have them, before the CSS in the Pen itself.
You can also link to another Pen here (use the .css
URL Extension) and we'll pull the CSS from that Pen and include it. If it's using a matching preprocessor, use the appropriate URL Extension and we'll combine the code before preprocessing, so you can use the linked Pen as a true dependency.
JavaScript preprocessors can help make authoring JavaScript easier and more convenient.
Babel includes JSX processing.
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.
You can apply a script from anywhere on the web to your Pen. Just put a URL to it here and we'll add it, in the order you have them, before the JavaScript in the Pen itself.
If the script you link to has the file extension of a preprocessor, we'll attempt to process it before applying.
You can also link to another Pen here, and we'll pull the JavaScript from that Pen and include it. If it's using a matching preprocessor, we'll combine the code before preprocessing, so you can use the linked Pen as a true dependency.
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.
Using packages here is powered by esm.sh, which makes packages from npm not only available on a CDN, but prepares them for native JavaScript ESM usage.
All packages are different, so refer to their docs for how they work.
If you're using React / ReactDOM, make sure to turn on Babel for the JSX processing.
If active, Pens will autosave every 30 seconds after being saved once.
If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.
If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.
Visit your global Editor Settings.
<div class="container">
<svg class="dy-logo" width="99" height="32" viewBox="0 0 99 32" xmlns="http://www.w3.org/2000/svg"><g fill="#000" fill-rule="nonzero"><path class="mark" d="M16.13,0 C7.293,0 0.13,7.163 0.13,16 C0.13,24.837 7.293,32 16.13,32 C24.967,32 32.13,24.837 32.13,16 C32.13,7.163 24.967,0 16.13,0 Z M25.404,6.326 C25.371,6.439 25.311,6.535 25.231,6.61 C24.934,6.95 21.763,10.486 20.577,11.696 C21.094,13.029 21.093,15.292 20.909,17.495 C20.651,20.594 20.242,21.842 18.562,22.794 C16.882,23.746 12.246,23.873 9.925,23.302 C7.604,22.731 7.328,20.415 7.11,20.32 C6.205,19.932 6.316,18.51 6.316,18.51 C6.95,18.479 7.584,19.273 7.584,19.273 C7.839,18.86 8.6,18.479 8.6,18.479 C8.95,19.716 8.219,20.129 8.281,20.288 C8.465,20.746 9.454,21.842 11.01,21.049 C12.566,20.256 12.629,18.099 12.724,15.433 C12.819,12.767 13.518,10.64 15.801,10.134 C17.558,9.743 18.834,10.184 19.404,10.457 C20.98,9.294 24.579,6.727 24.897,6.504 C24.994,6.432 25.104,6.366 25.22,6.312 L25.4,6.307 C25.4,6.31 25.401,6.313 25.401,6.317 C25.401,6.321 25.401,6.324 25.4,6.327 L25.404,6.326 Z M14.945,18.055 L14.946,18.055 C15.694,16.997 17.549,16.782 17.482,17.501 C17.443,17.887 16.819,18.698 16.615,19.12 C16.235,19.902 16.176,20.643 15.62,21.388 C15.19,21.917 14.534,22.255 13.799,22.255 C13.793,22.255 13.786,22.255 13.781,22.255 C13.52,22.247 12.578,22.098 12.874,21.654 C13.22,21.134 13.697,20.842 13.961,20.214 C14.286,19.44 14.438,18.772 14.945,18.055 Z M16.773,12.287 L16.767,12.289 C16.836,12.265 16.909,12.253 16.986,12.253 C17.292,12.253 17.552,12.452 17.643,12.727 C17.666,12.796 17.679,12.87 17.679,12.947 C17.679,13.33 17.369,13.64 16.986,13.64 C16.603,13.64 16.293,13.33 16.293,12.947 C16.293,12.64 16.492,12.38 16.773,12.287 Z"/><path class="copy" d="M39.127,12.916 L41.638,12.916 C43.762,12.916 45.111,14.397 45.111,16.472 C45.111,18.547 43.761,20.028 41.638,20.028 L39.127,20.028 L39.127,12.917 L39.127,12.916 Z M40.027,13.778 L40.027,19.177 L41.63,19.177 C43.22,19.177 44.183,18.036 44.183,16.478 C44.183,14.92 43.219,13.779 41.63,13.779 L40.03,13.779 L40.027,13.778 Z M50.73,12.81 C52.753,12.81 54.392,14.45 54.392,16.472 C54.392,18.494 52.752,20.134 50.73,20.134 C48.707,20.134 47.068,18.494 47.068,16.472 C47.067,16.45 47.067,16.423 47.067,16.397 C47.067,14.415 48.673,12.809 50.655,12.809 C50.681,12.809 50.708,12.809 50.734,12.81 L50.73,12.81 Z M50.73,19.244 C52.289,19.244 53.46,18.031 53.46,16.472 C53.46,14.913 52.288,13.7 50.73,13.7 C49.172,13.7 48.01,14.924 48.01,16.472 C48.01,18.02 49.185,19.244 50.73,19.244 Z M61.861,19.641 C61.332,19.95 60.695,20.133 60.017,20.133 C60.007,20.133 59.997,20.133 59.987,20.133 C57.998,20.092 56.4,18.468 56.4,16.472 C56.4,14.476 57.998,12.852 59.985,12.811 C59.997,12.811 60.007,12.811 60.017,12.811 C60.696,12.811 61.332,12.994 61.879,13.312 L61.861,14.359 C61.368,13.949 60.728,13.699 60.031,13.699 C60.016,13.699 60.001,13.699 59.987,13.699 C58.441,13.699 57.269,14.923 57.269,16.471 C57.269,18.019 58.43,19.243 59.989,19.243 C60.002,19.243 60.018,19.243 60.034,19.243 C60.729,19.243 61.368,18.998 61.867,18.59 L61.862,19.64 L61.861,19.641 Z M64.32,12.916 L65.219,12.916 L65.219,16.4 L67.877,12.916 L68.954,12.916 L66.757,15.824 L69.059,20.03 L67.992,20.03 L66.13,16.578 L65.22,17.719 L65.22,20.03 L64.321,20.03 L64.321,12.919 L64.32,12.916 Z M72.701,16.88 L70.347,12.916 L71.372,12.916 L73.15,15.981 L74.94,12.916 L75.977,12.916 L73.601,16.889 L73.601,20.03 L72.702,20.03 L72.702,16.88 L72.701,16.88 Z M81.301,18.041 L78.424,18.041 L77.703,20.029 L76.688,20.029 L79.367,12.918 L80.382,12.918 L83.061,20.029 L82.046,20.029 L81.301,18.041 Z M78.727,17.173 L81.007,17.173 L79.866,14.097 L78.727,17.173 Z M85.139,12.916 L87.241,12.916 C88.574,12.916 89.48,13.657 89.48,14.915 C89.48,15.94 88.841,16.537 88.015,16.736 C88.862,17.133 89.594,18.348 89.856,20.031 L88.926,20.031 C88.602,18.264 87.713,17.059 86.781,17.059 L86.04,17.059 L86.04,20.031 L85.141,20.031 L85.141,12.92 L85.139,12.916 Z M87.243,13.778 L86.04,13.778 L86.04,16.205 L87.243,16.205 C87.984,16.205 88.551,15.775 88.551,15.002 C88.551,14.229 87.985,13.778 87.243,13.778 Z M92.191,12.916 L94.702,12.916 C96.826,12.916 98.176,14.397 98.176,16.472 C98.176,18.547 96.826,20.028 94.702,20.028 L92.191,20.028 L92.191,12.917 L92.191,12.916 Z M93.09,13.778 L93.09,19.177 L94.69,19.177 C96.28,19.177 97.243,18.036 97.243,16.478 C97.243,14.92 96.282,13.779 94.692,13.779 L93.092,13.779 L93.09,13.778 Z"/></g></svg>
</div>
.container {
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background-color: rgba(0,0,0,.15);
}
.dy-logo {
width: 250px;
height: 100px;
border: 1px solid #000;
}
.mark {
animation: rotation 2s linear infinite ;
transform-origin: 50% 50%;
/* commented out the `transform-box` to illustrate the default behavior of using the SVG's viewbox for the transform-origin */
transform-box: view-box;
}
@keyframes rotation {
to {
transform: rotate(360deg);
}
}
Also see: Tab Triggers