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 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.
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.
If the stylesheet 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 CSS 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.
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 Skypack, which makes packages from npm not only available on a CDN, but prepares them for native JavaScript ES6 import
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.
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Inline Anchor Styles</title>
<meta name="description" content="Inline Anchor Styles: Modern styles and effects for links in a text flow" />
<meta name="keywords" content="link style, inline anchor, styles, inspiration, effect, hover, modern, web design" />
<meta name="author" content="Codrops" />
<link rel="shortcut icon" href="../favicon.ico">
<link href='https://fonts.googleapis.com/css?family=Raleway:400,100,300,500,800' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="css/normalize.css" />
<link rel="stylesheet" type="text/css" href="css/demo.css" />
<link rel="stylesheet" type="text/css" href="css/component.css" />
<!--[if IE]>
<script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<div class="svg-wrap">
<svg viewBox="0 0 400 20" xmlns="http://www.w3.org/2000/svg">
<path id="svg_line" d="m 1.986,8.91 c 55.429038,4.081 111.58111,5.822 167.11781,2.867 22.70911,-1.208 45.39828,-0.601 68.126,-0.778 28.38173,-0.223 56.76079,-1.024 85.13721,-1.33 24.17379,-0.261 48.42731,0.571 72.58115,0.571"></path>
</svg>
<svg viewBox="0 0 400 60" xmlns="http://www.w3.org/2000/svg">
<path id="svg_marker" d="m 3.518915,27.827324 c 55.429038,4.081 111.581115,5.822 167.117815,2.867 22.70911,-1.208 45.39827,-0.601 68.126,-0.778 28.38172,-0.223 56.76078,-1.024 85.13721,-1.33 24.17378,-0.261 48.4273,0.571 72.58114,0.571"></path>
</svg>
</div>
<div class="container">
<!-- Top Navigation -->
<div class="codrops-top clearfix">
<a class="codrops-icon codrops-icon-prev" href="https://tympanus.net/Development/ArrowNavigationStyles/"><span>Previous Demo</span></a>
<span class="right"><a class="codrops-icon codrops-icon-drop" href="https://tympanus.net/codrops/?p=19205"><span>Back to the Codrops Article</span></a></span>
</div>
<header class="codrops-header">
<h1>Inline Anchor Styles <span>Modern styles and effects for links in a text flow</span></h1>
</header>
<section class="link-fadeinbg">
<p>It had been my luck to live en famille with some <a href="#">herder</a> Lapps once before in <a href="#">North-Western Norway</a>. I had some elk shooting and some fishing up there, and I came across the tribe one <a href="#">day poaching</a> red char from one of my own hired lakes.</p>
</section>
<section class="link-slideup">
<p>When we actually did get under weigh, our outfit consisted of one inferior <a href="#">double-barrelled</a> 12-bore shot-gun by an anonymous maker, one good Marlin ’45 repeating <a href="#">rifle</a> carrying a long bullet, a small assortment of tinned foods and loaded <a href="#">cartridges</a>...</p>
</section>
<section class="link-slideright">
<p>It was these photographs which suggested going to see the Lapp in his own domains. The <a href="#">map</a> showed the position of <a href="#">Lapland</a> in large letters, and for the sake of definiteness we made up our minds to cross it from <a href="#">north</a> to south...</p>
</section>
<section class="link-scaleup">
<p>Drawing from our own ignorance, and from the united ignorance of <a href="#">others</a> (most freely and generously bestowed), we mapped out the details of the <a href="#">campaign</a> with glibness and ease. At <a href="#">Vardö</a> we were to purchase furs to wear and horses to ride.</p>
</section>
<section class="link-scaleupbounce">
<p>It is not to be denied, though, that the Novaya Zemblya <a href="#">scheme</a> had its seductions. There was in Vardö harbour a weird, clumsy craft of the type <a href="#">locally</a> known as “yot,” which had <a href="#">visited</a> that island many times with a crew of hunters. </p>
</section>
<section class="link-scaledown">
<p>As regards the commissariat, that we decided would be simple also. Reindeer meat, <a href="#">salmon</a>, rye bread, milk, cheese, and butter would be always procurable from the natives. And besides, we should <a href="#">shoot</a> far <a href="#">more game</a> than we could possibly use for the pot.</p>
</section>
<section class="link-flip">
<p>The few tins of <a href="#">provisions</a> we did take were mainly to serve as luxuries. For instance, we had quite a large <a href="#">supply</a> of foie gras and larks in aspic.</p>
<p>I had a vivid recollection of how the last tin of that <a href="#">pâté de foie gras</a> went.</p>
</section>
<section class="link-border">
<p>With these hints, then, at our initial <a href="#">ignorance</a> of what lay beyond, let me pass on to Vardö, which was the real starting-point of both our plans and our journey. The <a href="#">Windward</a> made an easy <a href="#">voyage</a> of it on the whole up to there, and although she carried away her main-topsail yard...</p>
</section>
<section class="link-skewed">
<p>Inside Vardö harbour walls, then, to a mooring we came, and the <a href="#">smells</a> of the place closed round us and took possession. Bobbling about on the <a href="#">harbour</a> swell around us were some two hundred vessels of strange <a href="#">Northern</a> rig, and almost all connected with the trade in fish. </p>
</section>
<section class="link-textupline">
<p>In the <a href="#">harbour</a>, steamers from France, and <a href="#">Hamburg</a>, and lower Norway, load bales of the dried cod, which will carry the <a href="#">aroma</a> of Vardö as far as Bremen, Brest, and St. Petersburg.</p>
</section>
<section class="link-tipoverlay">
<p>Once the town was a strong place, but the star-shaped fort, which was built in 1735, is to-day obsolete, though <a href="http://en.wikipedia.org/wiki/Field_gun">field-guns</a> and some breech-loaders on slides still grin through the <a href="http://en.wikipedia.org/wiki/Embrasure">embrasures</a>, ...</p>
</section>
<section class="link-arrow">
<p>There are other towns of <a href="#">Norway</a> given up to the cult of the cod, but nowhere is it so entirely the one staple of commerce as in this ancient <a href="#">settlement</a> so far within the <a href="#">Arctic Circle</a>. The tail of the Gulf Stream keeps its climate equable.</p>
</section>
<section class="link-curtain">
<p>But the <a href="#">summer</a> is the time when <a href="#">commerce</a> bristles. It is then that the larger merchants toil to make their wealth; and when the lamps begin to kindle in the windows, they take the mail <a href="#">steamers</a> and go away to follow the retiring sun.</p>
</section>
<section class="link-braces">
<p>Now <a href="#">Vardö</a> was not what we had come so far to see, or smell. We wanted to get started on our travel in <a href="#">Arctic Lapland</a> as quickly as might be; and as soon as the whale-boat had set us ashore amongst the <a href="#">fish litter</a> on one of the wharves, ...</p>
</section>
<section class="link-textfall">
<p>In the first instance the <a href="#" data-dummy="horse-bubble">horse-bubble</a> was pricked once and for all. Lapland, it appeared, was largely made up of <a href="#" data-dummy="swamps">swamps</a> and lakes and rivers, and we were gravely informed that the horse was not a <a href="#" data-dummy="navigable animal">navigable animal</a>.</p>
</section>
<section class="link-svgline">
<p>The men of the town, and the women, gut the fish, and leave the <a href="#">entrails<svg class="link-svgline"><use xlink:href="#svg_line"></svg></a> to rot in the streets, or under the wharfs, or in the harbour water; and then the <a href="#">carcasses<svg class="link-svgline"><use xlink:href="#svg_line"></svg></a> are carried to the outskirts and <a href="#">other things<svg class="link-svgline"><use xlink:href="#svg_line"></svg></a> of the town, and hung on endless racks of wood to shrivel, ...</p>
</section>
<section class="link-svgmarker">
<p>In winter, when the <a href="#">snow crust<svg class="link-svgline"><use xlink:href="#svg_marker"></svg></a> hardened, and the rivers and the lakes wereroofed with massive ice, then movement about the country was a <a href="#">comparatively<svg class="link-svgline"><use xlink:href="#svg_marker"></svg></a> easy thing. There were recognised routes, and the <a href="#">traveller<svg class="link-svgline"><use xlink:href="#svg_marker"></a> could pack himself into one of the boat-like, ...</p>
</section>
<section class="link-textupline">
<p>Excerpts from <a href="http://www.gutenberg.org/ebooks/45862">Through Arctic Lapland</a> by Charles John Cutcliffe Wright Hyne</p>
</section>
<!-- Related demos -->
<section class="related">
<p>If you enjoyed this demo you might also like:</p>
<a href="https://tympanus.net/Development/CreativeLinkEffects/">
<img src="https://tympanus.net/codrops/wp-content/uploads/2013/08/CreativeLinkEffects1-300x162.png" />
<h3>Creative Link Effects</h3>
</a>
<a href="https://tympanus.net/Development/ItemTransitions/">
<img src="https://tympanus.net/codrops/wp-content/uploads/2014/03/ItemTransitions-300x162.png" />
<h3>Item Transition Inspiration</h3>
</a>
</section>
</div><!-- /container -->
</body>
</html>
section {
position: relative;
z-index: 1; /* needed for setting pseudo-element z-index */
backface-visibility: hidden;
}
section a {
outline: none;
color: #404d5b;
text-decoration: none;
white-space: nowrap;
position: relative;
display: inline-block;
vertical-align: bottom;
}
section a::before,
section a::after {
pointer-events: none;
backface-visibility: hidden;
}
.link-flip a {
font-weight: 500;
perspective: 600px;
perspective-origin: 50% 100%;
transition: color 0.3s;
}
.link-flip a:hover,
.link-flip a:focus {
color: #e74c3c;
}
.link-flip a::before,
.link-flip a::after {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: -4px;
z-index: -1;
box-sizing: content-box;
padding: 0 4px;
content: '';
}
.link-flip a::before {
background-color: #fff;
transition: transform 0.2s;
transition-timing-function: cubic-bezier(0.7,0,0.3,1);
transform: rotateX(90deg);
transform-origin: 50% 100%;
}
.link-flip a:hover::before,
.link-flip a:focus::before {
transform: rotateX(0deg);
}
.link-flip a::after {
border-bottom: 2px solid #fff;
}
/*********************************************/
section {
position: relative;
z-index: 1; /* needed for setting pseudo-element z-index */
overflow: hidden;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
section a {
position: relative;
display: inline-block;
outline: none;
color: #404d5b;
vertical-align: bottom;
text-decoration: none;
white-space: nowrap;
}
section a::before,
section a::after {
pointer-events: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-font-smoothing: antialiased;
font-smoothing: antialiased;
}
/* Fade in background */
.link-fadeinbg {
background: rgba(149,165,166,0.1);
}
.link-fadeinbg a {
border-bottom: 1px solid rgba(52,73,94,0.4);
font-weight: 500;
-webkit-transition: background-color 0.3s, border-color 0.3s;
transition: background-color 0.3s, border-color 0.3s;
}
.link-fadeinbg a:hover,
.link-fadeinbg a:focus {
border-color: rgba(52,73,94,0);
background-color: rgba(52,73,94,0.1);
}
/* Slide up */
.link-slideup {
background: #f9f9f9;
color: #34495e;
}
.link-slideup a {
overflow: hidden;
font-weight: 500;
}
.link-slideup a::before {
position: absolute;
top: 0;
left: 0;
z-index: -1;
width: 100%;
height: 100%;
background-color: rgba(52,73,94,0.2);
content: '';
-webkit-transition: -webkit-transform 0.2s;
transition: transform 0.2s;
-webkit-transform: translateY(95%);
transform: translateY(95%);
}
.link-slideup a:hover::before,
.link-slideup a:focus::before {
-webkit-transform: translateY(0);
transform: translateY(0);
}
/* Slide right */
.link-slideright {
background: rgba(149,165,166,0.3);
}
.link-slideright a {
overflow: hidden;
font-weight: 500;
}
.link-slideright a::before {
position: absolute;
top: 0;
left: 0;
z-index: -1;
width: 100%;
height: 100%;
background: rgba(149,165,166,0.4);
content: '';
-webkit-transition: -webkit-transform 0.3s;
transition: transform 0.3s;
-webkit-transform: scaleY(0.618) translateX(-100%);
transform: scaleY(0.618) translateX(-100%);
}
.link-slideright a:hover::before,
.link-slideright a:focus::before {
-webkit-transform: scaleY(0.618) translateX(0);
transform: scaleY(0.618) translateX(0);
}
/* Scale up bounce */
.link-scaleupbounce {
background: #e74c3c;
color: #fff;
}
.link-scaleupbounce a {
vertical-align: bottom;
font-weight: 500;
}
.link-scaleupbounce a::before {
position: absolute;
top: 0;
left: -5px;
z-index: -1;
box-sizing: content-box;
padding: 0 5px;
width: 100%;
height: 100%;
background-color: #fff;
content: '';
opacity: 0;
-webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
transition: transform 0.2s, opacity 0.2s;
-webkit-transition-timing-function: cubic-bezier(0.25,0.25,0.325,1.39);
transition-timing-function: cubic-bezier(0.25,0.25,0.325,1.39);
-webkit-transform: scale(0);
transform: scale(0);
}
.link-scaleupbounce a:hover::before,
.link-scaleupbounce a:focus::before {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
/* Scale up */
.link-scaleup {
background: #34495e;
color: #b4b4b4;
}
.link-scaleup a {
color: #e74c3c;
font-weight: 500;
}
.link-scaleup a::before {
position: absolute;
top: 0;
left: -5px;
z-index: -1;
box-sizing: content-box;
padding: 0 5px;
width: 100%;
height: 100%;
border-radius: 10px;
background-color: #fff;
content: '';
opacity: 0;
-webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
transition: transform 0.2s, opacity 0.2s;
-webkit-transform: scale(0);
transform: scale(0);
}
.link-scaleup a:hover::before,
.link-scaleup a:focus::before {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}
/* Scale down */
.link-scaledown {
background: rgba(149,165,166,0.5);
}
.link-scaledown a {
color: #293b4c;
font-weight: 500;
-webkit-transition: color 0.3s;
transition: color 0.3s;
}
.link-scaledown a:hover,
.link-scaledown a:focus {
color: #f3f3f3;
}
.link-scaledown a::before {
position: absolute;
top: 0;
left: 0;
z-index: -1;
width: 100%;
height: 100%;
border-radius: 5px;
background-color: rgba(255,255,255,1);
content: '';
opacity: 0;
-webkit-transition: -webkit-transform 0.2s, opacity 0.3s, background-color 0.2s;
transition: transform 0.2s, opacity 0.2s, background-color 0.2s;
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
.link-scaledown a:hover::before,
.link-scaledown a:focus::before {
background-color: rgba(255,255,255,0);
opacity: 1;
-webkit-transform: scaleX(1) scaleY(0.618);
transform: scaleX(1) scaleY(0.618);
}
/* Flip */
.link-flip {
background: rgba(149,165,166,0.2);
}
.link-flip a {
font-weight: 500;
-webkit-transition: color 0.3s;
transition: color 0.3s;
-webkit-perspective: 600px;
perspective: 600px;
-webkit-perspective-origin: 50% 100%;
perspective-origin: 50% 100%;
}
.link-flip a:hover,
.link-flip a:focus {
color: #e74c3c;
}
.link-flip a::before,
.link-flip a::after {
position: absolute;
top: 0;
left: -4px;
z-index: -1;
box-sizing: content-box;
padding: 0 4px;
width: 100%;
height: 100%;
content: '';
}
.link-flip a::before {
background-color: #fff;
-webkit-transition: -webkit-transform 0.2s;
transition: transform 0.2s;
-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
transition-timing-function: cubic-bezier(0.7,0,0.3,1);
-webkit-transform: rotateX(90deg);
transform: rotateX(90deg);
-webkit-transform-origin: 50% 100%;
transform-origin: 50% 100%;
}
.link-flip a:hover::before,
.link-flip a:focus::before {
-webkit-transform: rotateX(0deg);
transform: rotateX(0deg);
}
.link-flip a::after {
border-bottom: 2px solid #fff;
}
/* Border */
.link-border a {
color: #e74c3c;
font-weight: 500;
-webkit-transition: -webkit-transform 0.2s;
transition: transform 0.2s;
}
.link-border a:hover,
.link-border a:focus {
-webkit-transform: scale(0.8333);
transform: scale(0.8333);
}
.link-border a::before {
position: absolute;
top: -2px;
left: -7px;
box-sizing: content-box;
padding: 0 5px;
width: 100%;
height: 100%;
border: 2px solid #e74c3c;
content: '';
opacity: 0;
-webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
transition: opacity 0.2s, transform 0.2s;
-webkit-transform: scale(0.8333);
transform: scale(0.8333);
}
.link-border a:hover::before,
.link-border a:focus::before {
opacity: 1;
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
/* Skewed */
.link-skewed {
background: rgba(149,165,166,0.1);
}
.link-skewed a {
font-weight: 500;
-webkit-transition: color 0.2s;
transition: color 0.2s;
}
.link-skewed a:hover,
.link-skewed a:focus {
color: #fff;
}
.link-skewed a::before {
position: absolute;
top: 0px;
left: -5px;
z-index: -1;
box-sizing: content-box;
padding: 0 5px;
width: 100%;
height: 100%;
background: #e74c3c;
content: '';
opacity: 0;
-webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
transition: transform 0.2s, opacity 0.2s;
-webkit-transform: skewY(-3deg) skewX(-11deg);
transform: skewY(-3deg) skewX(-11deg);
}
.link-skewed a:hover::before,
.link-skewed a:focus::before {
opacity: 1;
-webkit-transform: skewY(0) skewX(0);
transform: skewY(0) skewX(0);
}
/* SVG line */
.link-svgline a {
font-weight: 500;
}
.link-svgline a svg.link-svgline {
position: absolute;
top: 100%;
left: 0;
overflow: hidden;
margin: 0;
width: 100%;
height: 20px;
-webkit-transition: stroke-dashoffset 0.3s ease-in-out;
transition: stroke-dashoffset 0.3s ease-in-out;
-webkit-transform: translateY(-90%);
transform: translateY(-90%);
fill: none;
stroke: #b1d474;
stroke-width: 5;
stroke-dasharray: 400px;
stroke-dashoffset: 400px;
}
@media screen and (max-width: 50em) {
.link-svgline a svg.link-svgline {
-webkit-transform: translateY(-80%);
transform: translateY(-80%);
}
}
.link-svgline a:hover svg.link-svgline {
stroke-dashoffset: 0px;
}
/* SVG marker */
.link-svgmarker {
background: rgba(149,165,166,0.4);
}
.link-svgmarker a {
font-weight: 500;
}
.link-svgmarker a svg.link-svgline {
position: absolute;
top: 100%;
left: 0;
z-index: -1;
overflow: hidden;
margin: 0;
width: 100%;
height: 60px;
opacity: 0.5;
-webkit-transition: stroke-dashoffset 0.3s ease-in-out;
transition: stroke-dashoffset 0.3s ease-in-out;
-webkit-transform: translateY(-100%);
transform: translateY(-100%);
fill: none;
stroke: #f0f567;
stroke-width: 36;
stroke-dasharray: 400px;
stroke-dashoffset: 400px;
}
@media screen and (max-width: 50em) {
.link-svgmarker a svg.link-svgline {
-webkit-transform: translateY(-80%);
transform: translateY(-80%);
}
}
.link-svgmarker a:hover svg.link-svgline {
stroke-dashoffset: 0px;
}
/* Text up line */
.link-textupline a {
overflow: hidden;
font-weight: 800;
-webkit-transition: -webkit-transform 0.3s;
transition: transform 0.3s;
}
.link-textupline a:hover,
.link-textupline a:focus {
-webkit-transform: translateY(10%);
transform: translateY(10%);
}
.link-textupline a::before {
position: absolute;
top: 0;
left: 0;
z-index: -1;
width: 100%;
height: 100%;
background: #d1d1d1;
content: '';
-webkit-transition: -webkit-transform 0.3s;
transition: transform 0.3s;
-webkit-transform: translateY(100%) translateY(-5px);
transform: translateY(100%) translateY(-5px);
}
.link-textupline a,
.link-textupline a::before {
-webkit-transition-timing-function: cubic-bezier(0.6,0,0.4,1);
transition-timing-function: cubic-bezier(0.6,0,0.4,1);
}
.link-textupline a:hover::before,
.link-textupline a:focus::before {
-webkit-transform: translateY(-100%) translateY(5px);
transform: translateY(-100%) translateY(5px);
}
/* Tooltip overlay */
.link-tipoverlay {
background: #404d5b;
color: #95a5a6;
}
.link-tipoverlay a {
color: #fff;
}
.link-tipoverlay a::before {
position: absolute;
top: -50%;
left: -50%;
padding: 1.8em 1em 1em 3.7em;
width: 200%;
height: 200%;
background: #fff url(../img/link.svg) no-repeat -3em 50%;
background-size: auto 40%;
color: #404d5b;
color: transparent;
content: attr(href);
white-space: pre-wrap;
word-break: break-all;
font-weight: 600;
font-size: 50%;
line-height: 1.2;
opacity: 0.2;
-webkit-transition: opacity 0.3s, color 0.3s, -webkit-transform 0.3s, background-position 0.2s;
transition: opacity 0.3s, color 0.3s, transform 0.3s, background-position 0.2s;
-webkit-transform: scale(0.5);
transform: scale(0.5);
pointer-events: auto;
}
.link-tipoverlay a:hover::before,
.link-tipoverlay a:focus::before {
background-position: 1em 50%;
color: #404d5b;
opacity: 1;
-webkit-transition-delay: 0s, 0s, 0s, 0.1s;
transition-delay: 0s, 0s, 0s, 0.1s;
-webkit-transform: scale(1) translateY(-75%);
transform: scale(1) translateY(-75%);
}
/* Arrow */
.link-arrow {
background: rgba(149,165,166,0.4);
}
.link-arrow a {
padding: 0 0.25em;
font-weight: 500;
-webkit-transition: -webkit-transform 0.3s;
transition: transform 0.3s;
-webkit-transform: translateX(0);
transform: translateX(0);
}
.link-arrow a:hover,
.link-arrow a::after {
-webkit-transform: translateX(-1em);
transform: translateX(-1em);
}
.link-arrow a::before,
.link-arrow a::after {
position: absolute;
height: 100%;
content: '';
}
.link-arrow a::before {
left: 0;
z-index: -1;
width: 100%;
background: #fff;
}
.link-arrow a::after {
left: 100%;
z-index: -2;
width: 1em;
background: #34495e url(../img/arrow_right.svg) no-repeat 50% 50%;
background-size: 60% auto;
text-align: center;
font-family: Arial, sans-serif;
-webkit-transition: -webkit-transform 0.3s;
transition: transform 0.3s;
pointer-events: auto;
}
.link-arrow a:hover::after,
.link-arrow a:focus::after {
-webkit-transform: translateX(0);
transform: translateX(0);
}
/* Curtain */
.link-curtain {
background: rgba(149,165,166,0.3);
}
.link-curtain a {
overflow: hidden;
font-weight: 500;
}
.link-curtain a::before,
.link-curtain a::after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
-webkit-transition: -webkit-transform 0.3s;
transition: transform 0.3s;
}
.link-curtain a::before {
border-top: 2px solid #fff;
background: transparent;
-webkit-transition-delay: 0.3s;
transition-delay: 0.3s;
-webkit-transform: translateY( calc(100% - 2px) );
transform: translateY( calc(100% - 2px) );
}
.link-curtain a:hover::before,
.link-curtain a:focus::before {
-webkit-transition-delay: 0s;
transition-delay: 0s;
}
.link-curtain a:hover::before,
.link-curtain a:focus::before,
.link-curtain a:hover::after,
.link-curtain a:focus::after {
-webkit-transform: translateX(0);
transform: translateX(0);
}
.link-curtain a::after {
z-index: -1;
background: rgba(255,255,255,0.7);
-webkit-transform: translateY(-100%);
transform: translateY(-100%);
}
.link-curtain a:hover::after,
.link-curtain a:focus::after {
-webkit-transition-delay: 0.3s;
transition-delay: 0.3s;
}
/* Text scale */
.link-braces a {
padding: 0 0.25em;
font-weight: 500;
-webkit-transition: color 0.2s;
transition: color 0.2s;
}
.link-braces a:hover {
color: #d04c3f;
}
.link-braces a::before,
.link-braces a::after {
position: absolute;
top: 0;
font-weight: 100;
font-size: 150%;
line-height: 1;
opacity: 0;
-webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
transition: opacity 0.2s, transform 0.2s;
}
.link-braces a::before {
left: -0.1em;
content: '[';
-webkit-transform: translateX(-100%);
transform: translateX(-100%);
}
.link-braces a::after {
right: -0.1em;
content: ']';
-webkit-transform: translateX(100%);
transform: translateX(100%);
}
.link-braces a:hover::before,
.link-braces a:hover::after {
opacity: 1;
-webkit-transform: translateX(0);
transform: translateX(0);
}
/* Text fall */
.link-textfall {
background: #34495e;
color: #fff;
}
.link-textfall a {
color: #4c8fbb;
font-weight: 400;
-webkit-transition: color 0.3s;
transition: color 0.3s;
-webkit-perspective: 1000px;
perspective: 1000px;
}
.link-textfall a:hover {
color: #afd6f0;
}
.link-textfall a::before,
.link-textfall a::after {
position: absolute;
top: 0;
left: 0;
content: attr(data-dummy);
opacity: 0;
-webkit-transition: -webkit-transform 0.3s, opacity 0.3s, color 0.3s;
transition: transform 0.3s, opacity 0.3s, color 0.3s;
pointer-events: none;
}
.link-textfall a::before {
color: #7db8de;
-webkit-transition-delay: 0.15s;
transition-delay: 0.15s;
-webkit-transform: translateY(-100%) translateZ(100px) rotateX(30deg) rotateZ(-10deg);
transform: translateY(-100%) translateZ(100px) rotateX(30deg) rotateZ(-10deg);
}
.link-textfall a::after {
color: #afd6f0;
-webkit-transform: translateY(-100%) translateZ(100px) rotateX(-30deg) rotateZ(10deg);
transform: translateY(-100%) translateZ(100px) rotateX(-30deg) rotateZ(10deg);
}
.link-textfall a:hover::before,
.link-textfall a:hover::after {
color: transparent;
opacity: 1;
-webkit-transform: translateY(0) translateZ(0) rotateX(0) rotateZ(0);
transform: translateY(0) translateZ(0) rotateX(0) rotateZ(0);
}
.link-textfall a:hover::before {
-webkit-transition-delay: 0s;
transition-delay: 0s;
}
.link-textfall a:hover::after {
-webkit-transition-delay: 0.15s;
transition-delay: 0.15s;
}
/********************/
@font-face {
font-weight: normal;
font-style: normal;
font-family: 'codropsicons';
src:url('../fonts/codropsicons/codropsicons.eot');
src:url('../fonts/codropsicons/codropsicons.eot?#iefix') format('embedded-opentype'),
url('../fonts/codropsicons/codropsicons.woff') format('woff'),
url('../fonts/codropsicons/codropsicons.ttf') format('truetype'),
url('../fonts/codropsicons/codropsicons.svg#codropsicons') format('svg');
}
*, *:after, *:before { border-box; box-sizing: border-box; }
.clearfix:before, .clearfix:after { content: ''; display: table; }
.clearfix:after { clear: both; }
body {
background: #f9f7f6;
color: #404d5b;
font-weight: 300;
font-size: 1em;
font-family: 'Raleway', Arial, sans-serif;
}
.svg-wrap {
position: absolute;
width: 0px;
height: 0px;
overflow: hidden;
}
a {
color: #404d5b;
text-decoration: none;
outline: none;
}
section {
padding: 6em 2em;
}
section p {
font-size: 3em;
line-height: 1.518;
max-width: 1200px;
margin: 0 auto;
}
/* Header */
.codrops-header {
padding: 5em 2em;
letter-spacing: -1px;
}
.codrops-header h1 {
max-width: 1200px;
margin: 0 auto;
font-weight: 800;
font-size: 5em;
line-height: 1;
}
.codrops-header h1 span {
display: block;
font-size: 50%;
font-weight: 400;
padding-top: 0.325em;
color: #c3c8cd;
}
/* To Navigation Style */
.codrops-top {
width: 100%;
text-transform: uppercase;
font-weight: 500;
font-size: 0.69em;
line-height: 2.2;
}
.codrops-top a {
display: inline-block;
padding: 0 1em;
text-decoration: none;
letter-spacing: 1px;
color: #34495e;
}
.codrops-top a:hover,
.codrops-top a:focus {
color: #fb6859;
}
.codrops-top span.right {
float: right;
}
.codrops-top span.right a {
display: block;
float: left;
}
.codrops-icon:before {
margin: 0 4px;
text-transform: none;
font-weight: normal;
font-style: normal;
font-variant: normal;
font-family: 'codropsicons';
line-height: 1;
speak: none;
-webkit-font-smoothing: antialiased;
}
.codrops-icon-drop:before {
content: "\e001";
}
.codrops-icon-prev:before {
content: "\e004";
}
/* Related demos */
.related {
text-align: center;
}
.related p {
padding: 2em 0;
font-size: 2em;
font-weight: 500;
}
.related > a {
border: 1px solid #333;
display: inline-block;
text-align: center;
margin: 20px 10px;
padding: 25px;
white-space: pre-line;
}
.related a:hover {
border-color: #333;
}
.related a img {
max-width: 100%;
opacity: 0.8;
}
.related a:hover img,
.related a:active img {
opacity: 1;
}
.related a h3 {
margin: 0;
padding: 0.5em 0 0.3em;
max-width: 300px;
font-size: 1.2em;
text-align: left;
}
@media screen and (max-width: 50em) {
section {
font-size: 50%;
padding: 6em 6.6em;
}
}
@media screen and (max-width: 25em) {
.codrops-icon span {
display: none;
}
}
/**
* Reference https://tympanus.net/codrops/2014/06/04/inspiration-for-inline-anchor-styles/
**/
Also see: Tab Triggers