Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

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.

+ 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

Auto Save

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

              
                <!DOCTYPE html>
<!--[if lt IE 7]>  <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>	<html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>	<html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!-->	<html class="no-js"><!--<![endif]-->
	<head>
		<meta charset="utf-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
		<title>Typography Test</title>
		<meta name="description" content="">
		<meta name="viewport" content="width=device-width">

		<link rel="stylesheet" href="css/normalize.css">
		<link rel="stylesheet" href="css/main.css">
	</head>
	<body class="baseline">
		<!--[if lt IE 7]>
		    <p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to improve your experience.</p>
		<![endif]-->

		<section id="content" class="wrapper">
		<div class="inner">

			<article id="post0123123" class="post">
				<h1>This is a 1st level Heading</h1>
				<h2>This is a 2nd level Heading</h2>
				<h3>This is a 3rd level Heading</h3>
				<h4>This is a 4th level Heading</h4>
				<h5>This is a 5th level Heading</h5>
				<h6>This is a 6th level Heading</h6>
				<p>The following code was built to help developers test their websites, particularly how type elements line up in relationship to one another. This can be used in combination with a <a href="https://gist.github.com/4277585" title="CSS3 Baseline Grid">baseline grid</a> for more precision. Modified by <a href="http://cwhale.me">Carlos Ballena</a>. My apologies for I can't remember who built this originally, within the content you will find the name Jukka Korpela, after a quick Google search he seems to have a Web Development background so I think it's safe to assume he built it. Regardless, thanks to the creator for his work served as a template to this piece.</p>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				</hr>
				<h1>This is a 1st level Heading</h1>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				<h2>This is a 2nd level Heading</h2>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				<h3>This is a 3rd level Heading</h3>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				<h4>This is a 4th level Heading</h4>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				<h5>This is a 5th level Heading</h5>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				<h6>This is a 6th level Heading</h6>
				<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus</p>
				</hr>
				<h1>This is a 1st Level Heading</h1>
				<p>This is a small test paragraph.</p>
				<h2>This is 2nd level heading</h2>
				<p>This is a small test paragraph.</p>
				<h3>This is 3rd level heading</h3>
				<p>This is a small test paragraph.</p>
				<h4>This is 4th level heading</h4>
				<p>This is a small test paragraph.</p>
				<h5>This is 5th level heading</h5>
				<p>This is a small test paragraph.</p>
				<h6>This is 6th level heading</h6>
				<p>This is a small test paragraph.</p>
				<div>Basic block level elements</div>
				<p>This is a normal paragraph (<code>p</code> element). To add some length to it, let us mention that this page was primarily written for testing the effect of <strong>user style sheets</strong> . You can use it for various other purposes as well, like just checking how your browser displays various HTML elements.</p>
				<p>This is another paragraph. I think it needs to be added that the set of elements tested is not exhaustive in any sense. I have selected those elements for which it can make sense to write user style sheet rules, in my opionion.</p>
				<div>This is a <code>div</code> element. Authors may use such elements instead of paragraph markup for various reasons. (End of <code>div</code>.)</div>
				<blockquote><p>This is a block quotation containing a single paragraph. Well, not quite, since this is not <em>really</em> quoted text, but I hope you understand the point. After all, this page does not use HTML markup very normally anyway.</p></blockquote>
				<p>The following contains address information about the author, in an <code>address</code> element.</p>
				<address><a href="#">Jukka Korpela</a>, <a href="mailto:[email protected]">[email protected]</a></address>
				<h2>Lists</h2>
				<p>This is a paragraph before an <strong>unordered</strong> list (<code>ul</code> ). Note that the spacing between a paragraph and a list before or after that is hard to tune in a user style sheet. You can't guess which paragraphs are logically related to a list, e.g. as a "list header".</p>
				<ul><li>One.</li>
					<li>Two.</li>
					<li>Three. Well, probably this list item should be longer. Note that for short items lists look better if they are compactly presented, whereas for long items, it would be better to have more vertical spacing between items.</li>
					<li>Four. This is the last item in this list. Let us terminate the list now without making any more fuss about it.</li>
				</ul>
				<p>This is a paragraph before an <strong>ordered</strong> list (<code>ol</code> ). Note that the spacing between a paragraph and a list before or after that is hard to tune in a user style sheet. You can't guess which paragraphs are logically related to a list, e.g. as a "list header".</p>
				<ol>
					<li>One.</li>
					<li>Two.</li>
					<li>Three. Well, probably this list item should be longer. Note that if items are short, lists look better if they are compactly presented, whereas for long items, it would be better to have more vertical spacing between items.</li>
					<li>Four. This is the last item in this list. Let us terminate the list now without making any more fuss about it.</li>
				</ol>
				<h2>Text-level markup</h2>
				<ul>
					<li><strong>this is highlighted text</strong> (<code>strong</code> markup used)</li>
					<li>this is <em>very</em> simple (<code>em</code> markup used for emphasizing a word)</li>
					<li><u>underlined</u> text (<code>u</code> markup used)</li>
					<li><strike>overstruck</strike> (<code>strike</code> markup used; note: <code>s</code> is a nonstandard synonym for <code>strike</code> )</li>
					<li><code>a[i] = b[i] + c[i);</code> (computer code; class <code>code</code> used)</li>
					<li>In order to test how subscripts and superscripts (<code>sub</code> and <code>sup</code> markup) work inside running text, we need some dummy text around constructs like x<sub>1</sub> and H<sub>2</sub> O (where subscripts occur). So here is some fill so that you will (hopefully) see whether and how badly the subscripts and superscripts mess u vertical spacing between lines. Now superscripts: M<sup>lle</sup>, 1<sup>st</sup>, and then some mathematical notations: e<sup>x</sup>, sin<sup>2</sup> <em>x</em> , and some nested superscripts (exponents) too: e<sup>x</sup>2 and f(x)<sup>g(x)</sup>a+b+c (where 2 and a+b+c should appear as exponents of exponents).</li>
				</ul>
				<h2>Links</h2>
				<ul>
					<li><a href="#">main page</a></li>
					<li><a title="Writing Systems and Punctuation" href="http://www.unicode.org/versions/Unicode4.0.0/ch06.pdf">Unicode Standard, chapter&nbsp;6</a></li>
				</ul>
				<p>This is a text paragraph that contains some inline links. Generally, inline links (as opposite to e.g. links lists) are problematic from the <a href="#">usability</a> perspective, but they may have use as “incidental”, less relevant links. See the document <a href="#">Links Want To Be Links</a> .</p>
				<h2>Tables</h2>
				<p>The following table has a caption. The first row and the first column contain table header cells (<code>th</code> elements) only; other cells are data cells (<code>td</code> elements), with <code>align="right"</code> attributes:</p>
				<p>Sample table: Areas of the Nordic countries, in sq km</p>
				<table style="border-width: ;" summary="Each row names a Nordic country and specifies its total area and land area, in square kilometers"><tbody><tr><th colspan="1" rowspan="1" style="white-space:normal;">Country</th>
					<th colspan="1" rowspan="1" style="white-space:normal;">Total area</th>
					<th colspan="1" rowspan="1" style="white-space:normal;">Land area</th>
				</tr>
				<tr>
					<th colspan="1" rowspan="1" style="white-space:normal;">Denmark</th>
					<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">43,070</td>
				<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">42,370</td>
				</tr>
				<tr>
					<th colspan="1" rowspan="1" style="white-space:normal;">Finland</th>
					<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">337,030</td>
				<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">305,470</td>
				</tr>
				<tr>
					<th colspan="1" rowspan="1" style="white-space:normal;">Iceland</th>
					<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">103,000</td>
				<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">100,250</td>
				</tr>
				<tr>
					<th colspan="1" rowspan="1" style="white-space:normal;">Norway</th>
					<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">324,220</td>
				<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">307,860</td>
				</tr>
				<tr>
					<th colspan="1" rowspan="1" style="white-space:normal;">Sweden</th>
					<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">449,964</td>
				<td align="RIGHT" colspan="1" rowspan="1" style="white-space:normal;">410,928</td>
				</tr>
				</tbody>
				</table>
				</hr>
				<address><a href="#">Jukka Korpela</a></address>
			</article>

		</div>
		</section>

		<footer>
		<div class="wrapper">
			<p class="rights">Test &copy;.</p>
		</div>
		</footer>

	</body>
</html>
              
            
!

CSS

              
                body { position:relative; padding:1.5em; }
body:hover:before {
    width: 100%; height: 100%;         /* sizes element */
    display: block; content: "";       /* displays element */
    position: absolute; z-index: 9999; /* positions element z axys */
    top:0; left:0;                     /* positions element xy axys */
    pointer-events:none;               /* click through overlay */
 
    background-origin: content-box;    /* for correct display of grid */
    background-attachment: local;      /* for scrolling */

    background-size:                   /* sets baseline height */ 
        100% 1.5em,
        100% .75em,
        100% .375em;

    background-image:
        -webkit-linear-gradient(rgba(0, 0, 0, .75) 1px, transparent 1px),
        -webkit-linear-gradient(rgba(0, 255, 255, .5) 1px, transparent 1px),
        -webkit-linear-gradient(rgba(0, 0, 0, .1) 1px, transparent 1px);
    background-image:
        -moz-linear-gradient(rgba(0, 0, 0, .75) 1px, transparent 1px), 
        -moz-linear-gradient(rgba(0, 255, 255, .5) 1px, transparent 1px),
        -moz-linear-gradient(rgba(0, 0, 0, .1) 1px, transparent 1px);
    background-image:
        linear-gradient(rgba(0, 0, 0, .75) 1px, transparent 1px),
        linear-gradient(rgba(0, 255, 255, .5) 1px, transparent 1px),
        linear-gradient(rgba(0, 0, 0, .1) 1px, transparent 1px);
}
h1 { font-size:3em; line-height:1em; margin:0 0 1.5rem; }
p { font-size:1em; line-height:1.5em; margin:0 0 1.5em; }

body:hover *{background:none !important;outline:1px dashed rgba(100%,0%,0%,.5)}
              
            
!

JS

              
                
              
            
!
999px

Console