Sometimes we need to put a customer help form on the sidebar of the website. Start by putting a button there, and then slide out the content after clicking. Generally, we will use js to control this effect. Now css3 can do it too.
How is this done? That will use the :target tag in CSS3.
Let's take a look at the implementation of this animation.
1. Fix the box at a certain location.
2. Hide the form inside and only expose a click button.
3. When the button is clicked, the form is drawn and the button text is changed.
4. Click the button again and the form is indented.
HTML CODE:
<h1><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slide-in slide-out</font></font></h1>
<h2><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Click it, then click Hide</font></font></h2>
<div id="volet_clos">
<div id="volet">
<p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Lorem Alsace ipsum chime amet sed bissame so libero. </font><font style="vertical-align: inherit;">DNA, John Richard</font></font></p>
<p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Sorrow elementum semper tellus s'guelt Pfourtz</font></font></p>
<a href="#volet" class="ouvrir" aria-hidden="true"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slide out</font></font></a>
<a href="#volet_clos" class="fermer" aria-hidden="true"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Slide in</font></font></a>
</div>
</div>
CSS CODE:
<style type="text/css">
<!--
body {
margin: 0;
padding: 10px 40px;
background: #F1EFE2;
font-size: 1.4em;
font-family: georgia, "trebuchet ms", arial, serif;
height: 3000px; /* test fixed + scroll */
}
h1 {
margin-top: 20px;
margin-bottom: 40px;
color: #345;
text-shadow: 1px 1px 1px #fff;
}
h2 {
color: #678;
text-shadow: 1px 1px 1px #fff;
font-size: 1.1em;
}
#volet {
width: 250px;
padding: 10px;
background: #6B9A49;
color: #fff;
}
#volet a.ouvrir,
#volet a.fermer {
padding: 10px 25px;
background: #555;
color: #fff;
text-decoration: none;
}
#volet {
position: absolute;
left: -270px; /* test fixed + scroll, position top */
-webkit-transition: all .5s ease-in;
-moz-transition: all .5s ease-in;
transition: all .5s ease-in;
}
#volet a.ouvrir,
#volet a.fermer {
position: absolute;
right: -88px;
top: 150px;
-webkit-transform: rotate(270deg);
-moz-transform: rotate(270deg);
-o-transform: rotate(270deg);
-ms-transform: rotate(270deg);
-moz-radius: 0 0 8px 8px;
border-radius: 0 0 8px 8px;
}
#volet a.fermer {
display: none;
}
#volet:target {
left: 10px;
}
#volet:target a.fermer {
display: block;
}
#volet:target a.ouvrir {
display: none;
}
#volet_clos:target #volet {
left: -270px;
}
/* test fixed + scroll */
#volet_clos {
position: fixed;
top: 55px;
left: 0;
}
-->
</style>
Post your comments / questions
Recent Article
- How to add two numbers in Android Studio? | Source Code
- FindViewByID returns null in android studio -SOLVED
- Saving changes is not permitted in SQL SERVER - [SOLVED]
- Restore of database failed. File cannot be restored over the existing. -[SOLVED]
- One or more projects in the solution were not loaded correctly in Visual Studio 2019 | FIXED
- How to find Laptop's Battery Health?
- SOLVED-Related Field got invalid lookup: icontains error in Django
- How to enable Search Feature in Django admin?
Related Article