I found this post How to create sliding DIV on click?
But all the answers are Jquery methods. Is there any way to create this with PURE CSS? I have a couple other things in mind as well...
- What can I add to make the slide down div stay put when scrolling
- Change the link that triggers the animation to "Close" in order to make the div slide back up
Here is a link to the example in that post// http://shutterbugtheme.tumblr.com/
I've also tried googling but the only results are jquery methods...
This is impossible in pure CSS to recognise a click. You can do it with :hover and a transition, but that is as close as you're going to get without javascript.
http://jsfiddle.net/Kyle_/MaMu9/1/
Be aware though that transitions are CSS3 and will not work in IE<9 and older versions of better browsers.
Edit: after another answer was posted using the :focus property in CSS: it is possible with one caveat: you have to click outside of the element that makes it slide down to make it slide up, otherwise it works fine.
Be aware that the element must have tabindex='1' (or any number that makes sense depending on where the element is in the document) for this to work.
http://jsfiddle.net/Kyle_Sevenoaks/MaMu9/1/
It can be done, although it's a little bit of a hack. The two elements that retain state (referred to in CSS as :checked) are the checkbox and radio button element. So if you associate a checkbox with a label by using a for attribute and add a div, you can get a result by reading the status of the (hidden) button:
And the CSS:
A further explanation and example that includes an animated open/close effect.