Jan
15Sliding Panels for Maximum Content in Fixed Space
On the law library's website, we have what's called the Feedback Blog. This is a place where we post questions from students and any of our visitors, together with answers to those questions. It's an informal dialogue of sorts, styled in a Jeopardy type fashion, where every post has to be in the form of a question.
On our library homepage, we present the one question and the first 100 characters of the answer to give a fragment of our response. One problem with this approach is that we only have enough room for a single question. As soon as a new question is posted, the most recent one disappears. Instead of just listing more questions, we chose a sliding panel widget so people can page through recent questions and answers without leaving the page or forcing the page size any bigger.
Implementing this was pretty easy with Adobe's Spry Sliding Panel Widget. We went right to the Sliding Panels Sample page and reverse-engineered the code for a horizontal panel. A few checks in the documentation and some testing, and it's ready to go. Of course, it might have been better to read Adobe's entire explanation on Building a Spry Sliding Panels widget, but the code is pretty easy to figure out.
Now there's just one problem: IE6 works with the code, but it displays the widget box strangely. The problem is that IE6 doesn't render the CSS rule max-height properly. In fact, it flat-out ignores it.
Take a look at how it shows up in IE6:
We could have fixed this problem with a proprietary Internet Explorer trick such as this or this. The only problem is that it just seemed wrong to add bloat and hacks to the homepage, just so IE6 would look pretty. A quick check of Google Analytics shows that just over half our our users browse with Internet Explorer. Of those, less than a third use IE6. Given these numbers, we figured it was fine the way it is.
Web design site Smashing Magazine lists this technique, which they call Carousels (slideshows) as one of the Web Design Trends for 2009. It's nice to be trendy now and again. Oh, and it's even nicer to add functionality with little code and no loss of screen real estate.
