mirror of
https://github.com/papercss/papercss
synced 2024-06-02 14:02:34 +02:00
Merge pull request #34 from wintercounter/feature-short-popover-attributes
Feature short popover attributes
This commit is contained in:
commit
f5096d9609
26
index.html
26
index.html
|
@ -20,8 +20,8 @@
|
|||
<meta property="og:description" content="The less formal CSS framework">
|
||||
|
||||
<!-- Styles -->
|
||||
<link rel="stylesheet" href="/dist/paper.css">
|
||||
<link rel="stylesheet" href="/demo.css">
|
||||
<link rel="stylesheet" href="./dist/paper.css">
|
||||
<link rel="stylesheet" href="./demo.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
@ -611,42 +611,42 @@ function add(x, y) {
|
|||
<div id="popovers" class="section">
|
||||
<h2>Popovers</h2>
|
||||
<h4>Basic usage</h4>
|
||||
<p>You can add popovers, also called tooltips, on your elements. popover attribute is the popover text content, popover-position attribute can be: top, left, right, bottom.</p>
|
||||
<p>You can add popovers, also called tooltips, on your elements. popover-[position] attribute is the popover text content and it can be: top, left, right, bottom.</p>
|
||||
|
||||
<div class="row flex-spaces">
|
||||
<div class="sm-3 col">
|
||||
<p popover="Popover on left" popover-position="left">Popover left position</p>
|
||||
<p popover-left="Popover on left">Popover left position</p>
|
||||
</div>
|
||||
<div class="sm-3 col">
|
||||
<p popover="Popover on top" popover-position="top">Popover top position</p>
|
||||
<p popover-top="Popover on top">Popover top position</p>
|
||||
</div>
|
||||
<div class="sm-3 col">
|
||||
<p popover="Popover on bottom" popover-position="bottom">Popover bottom position</p>
|
||||
<p popover-bottom="Popover on bottom">Popover bottom position</p>
|
||||
</div>
|
||||
<div class="sm-3 col">
|
||||
<p popover="Popover on right" popover-position="right">Popover right position</p>
|
||||
<p popover-right="Popover on right">Popover right position</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="docs">
|
||||
<pre>
|
||||
<p popover="Popover on left" popover-position="left">Popover left position</p>
|
||||
<p popover="Popover on top" popover-position="top">Popover top position</p>
|
||||
<p popover="Popover on bottom" popover-position="bottom">Popover bottom position</p>
|
||||
<p popover="Popover on right" popover-position="right">Popover right position</p></pre>
|
||||
<p popover-left="Popover on left">Popover left position</p>
|
||||
<p popover-top="Popover on top">Popover top position</p>
|
||||
<p popover-bottom="Popover on bottom">Popover bottom position</p>
|
||||
<p popover-right="Popover on right">Popover right position</p></pre>
|
||||
</div>
|
||||
|
||||
<p>But you can also popover on pretty much any element you want, it can be on a button, on a table cell, ...</p>
|
||||
|
||||
<div class="row flex-center">
|
||||
<div class="sm-6 col">
|
||||
<button popover="Popover on top" popover-position="top">Popover on top and on a button!</button>
|
||||
<button popover-top="Popover on top">Popover on top and on a button!</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="docs">
|
||||
<pre>
|
||||
<button popover="Popover on top" popover-position="top">Popover on top and on a button!</button></pre>
|
||||
<button popover-top="Popover on top">Popover on top and on a button!</button></pre>
|
||||
</div>
|
||||
</div>
|
||||
<div id="cards" class="section">
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
@muted-light: lighten(@muted, 35%);
|
||||
|
||||
@white-dark: rgba(0, 0, 0, 0.3);
|
||||
@light-dark: rgba(0, 0, 0, 0.7);
|
||||
@white: rgba(255, 255, 255, 1);
|
||||
@main-background: rgba(255, 255, 255, 1);
|
||||
|
||||
|
|
|
@ -1,80 +1,94 @@
|
|||
// Core popover
|
||||
[popover] {
|
||||
// Core popovers
|
||||
[popover-top],
|
||||
[popover-right],
|
||||
[popover-bottom],
|
||||
[popover-left]{
|
||||
position: relative;
|
||||
margin: 24px;
|
||||
}
|
||||
|
||||
// Popover hover trigger
|
||||
[popover]:hover {
|
||||
// Popover hover trigger
|
||||
&:hover {
|
||||
&::after {
|
||||
transition: opacity .2s ease-out;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Creating popover::after element
|
||||
&::after {
|
||||
transition: opacity .2s ease-out;
|
||||
opacity: 1;
|
||||
position: absolute;
|
||||
top: -6px;
|
||||
left: 50%;
|
||||
opacity: 0;
|
||||
padding: 4px 2px;
|
||||
min-width: 80px;
|
||||
font-size: 0.7em;
|
||||
text-align: center;
|
||||
color: @white;
|
||||
background: @light-dark;
|
||||
transition: opacity .25s ease-out;
|
||||
transform: translateX(-50%) translateY(-100%);
|
||||
.border;
|
||||
}
|
||||
}
|
||||
|
||||
// Creating popover::after element
|
||||
[popover]::after {
|
||||
content: attr(popover);
|
||||
position: absolute;
|
||||
top: -6px;
|
||||
left: 50%;
|
||||
opacity: 0;
|
||||
padding: 4px 2px;
|
||||
min-width: 80px;
|
||||
font-size: 0.7em;
|
||||
text-align: center;
|
||||
color: @white;
|
||||
background: @white-dark;
|
||||
transition: opacity .25s ease-out;
|
||||
transform: translateX(-50%) translateY(-100%);
|
||||
.border;
|
||||
}
|
||||
|
||||
// Popover positioning: left, right, top, bottom
|
||||
[popover-position='left']::before {
|
||||
left: 0%;
|
||||
top: 50%;
|
||||
margin-left: -12px;
|
||||
transform: translatey(-50%) rotate(-90deg);
|
||||
[popover-left] {
|
||||
&::before {
|
||||
left: 0;
|
||||
top: 50%;
|
||||
margin-left: -12px;
|
||||
transform: translatey(-50%) rotate(-90deg);
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: attr(popover-left);
|
||||
left: 0;
|
||||
top: 50%;
|
||||
margin-left: -8px;
|
||||
transform: translateX(-100%) translateY(-50%);
|
||||
}
|
||||
}
|
||||
|
||||
[popover-position='left']::after {
|
||||
left: 0%;
|
||||
top: 50%;
|
||||
margin-left: -8px;
|
||||
transform: translateX(-100%) translateY(-50%);
|
||||
[popover-right] {
|
||||
&::before {
|
||||
left: 100%;
|
||||
top: 50%;
|
||||
margin-left: 1px;
|
||||
transform: translatey(-50%) rotate(90deg);
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: attr(popover-right);
|
||||
left: 100%;
|
||||
top: 50%;
|
||||
margin-left: 8px;
|
||||
transform: translateX(0%) translateY(-50%);
|
||||
}
|
||||
}
|
||||
|
||||
[popover-position='top']::before {
|
||||
left: 50%;
|
||||
[popover-top] {
|
||||
&::before {
|
||||
left: 50%;
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: attr(popover-top);
|
||||
left: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
[popover-position='top']::after {
|
||||
left: 50%;
|
||||
}
|
||||
[popover-bottom] {
|
||||
&::before {
|
||||
top:100%;
|
||||
margin-top: 8px;
|
||||
transform: translateX(-50%) translatey(-100%) rotate(-180deg);
|
||||
}
|
||||
|
||||
[popover-position='bottom']::before {
|
||||
top:100%;
|
||||
margin-top: 8px;
|
||||
transform: translateX(-50%) translatey(-100%) rotate(-180deg);
|
||||
}
|
||||
|
||||
[popover-position='bottom']::after {
|
||||
top: 100%;
|
||||
margin-top: 8px;
|
||||
transform: translateX(-50%) translateY(0%);
|
||||
}
|
||||
|
||||
[popover-position='right']::before {
|
||||
left: 100%;
|
||||
top: 50%;
|
||||
margin-left: 1px;
|
||||
transform: translatey(-50%) rotate(90deg);
|
||||
}
|
||||
|
||||
[popover-position='right']::after {
|
||||
left: 100%;
|
||||
top: 50%;
|
||||
margin-left: 8px;
|
||||
transform: translateX(0%) translateY(-50%);
|
||||
&::after {
|
||||
content: attr(popover-bottom);
|
||||
top: 100%;
|
||||
margin-top: 8px;
|
||||
transform: translateX(-50%) translateY(0%);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue