Urgent - accordion style left hand navigation bar

I have 8 hours to have this done (see the area in the red box on my screenshot).

I am really struggling with all aspects.  I'm stressed and not thinking well because I am stressed.

How can I accomplish this?

The criteria are:

-It must look as close to the mock-up as possible
-It must function as an "accordion" style menu.
-The arrow on the right edge of the button must point down when sub items are visible, and be pointing to the right when the menu is collapsed.


I've made **some** progress with the accordion, thanks to some expert help, but it still has a long way to go, IMHO.


If there are some inexpensive tools that can help this, I would be willing to go that route as well.  Anything to make this easier.

Here are some purchases I am considering:

CSS3 Menu Maker:
http://css3menu.com/

but I am not confident it supports "accordion" type menus


Flash Accordion:
http://www.oxylusflash.com/flashfiles/unlimited-levels-accordion-menu-as3

If I could make the accordion look like the screenshot, this would work.



Thanks,


Tom
LVL 5
Tom KnowltonWeb developerAsked:
Who is Participating?
 
DjDezmondConnect With a Mentor Commented:
OK, with limited time and knowledge of exactly what you are after, i can only offer some general assitance:

The idea when creating an accordian, is to set within your CSS file (or directly in the page if you prefer to store your CSS information that way) 2 different header classes (one for selected, and one for unselected):

 
.accordionHeader
{
    border: 1px solid #2F4F4F;
    color: white;
    background-color: #5078B3;
    padding: 5px;
    cursor: pointer;
}

.accordionHeaderSelected
{
    border: 1px solid #2F4F4F;
    color: white;
    background-image: url('Images/SmallSquare.bmp');
    padding: 5px;
    cursor: pointer;
}

Open in new window


The accordian HTML code (on the page) should then look something like this (watch for the two CSS classes you have just seen above):

 
<ajaxToolkit:Accordion ID="TheAccordion" runat="server" HeaderCssClass="accordionHeader" HeaderSelectedCssClass="accordionHeaderSelected"
                        ContentCssClass="accordionContent" FadeTransitions="false" FramesPerSecond="80" 
                        TransitionDuration="175" AutoSize="None" RequireOpenedPane="false" SuppressHeaderPostbacks="true" SelectedIndex="0" Width="100%">
                        <Panes>               

                        </Panes>
                    </ajaxToolkit:Accordion>

Open in new window


Make sure that you tell the page to bother looking for your CSS file, by specifying it in the header of the page:

 
<head runat="server">
<title>Your Title here</title>

<link href="StyleSheet.css" rel="stylesheet" type="text/css" />

</head>

Open in new window


You could, if you preferred put the style info directly into the header of the page (as I said above):

 
<head runat="server">
<title>Presentation Manager</title>

<style type="text/css">
.accordionHeader
{
    border: 1px solid #2F4F4F;
    color: white;
    background-color: #5078B3;
    padding: 5px;
    cursor: pointer;
}

.accordionHeaderSelected
{
    border: 1px solid #2F4F4F;
    color: white;
    background-image: url('Images/SmallSquare.bmp');
    padding: 5px;
    cursor: pointer;
}
</style>
</head>

Open in new window



Make sure that the CSS classes do exactly what you need, dont just use my examples as they come straight of one of my sites. For example, in the unselected class, put an image of a sideways arrow... and in the selected one, an image of a downwards arrow. I imagine you will need to tinker around for abit, but this should give you a good starting point.
0
 
DjDezmondCommented:
I cant see a screenshot dude...
0
 
Tom KnowltonWeb developerAuthor Commented:
>>>I cant see a screenshot dude...


Maybe because I forgot to attach it....  :P


accord.png
0
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
DjDezmondCommented:
Do you know what, there are many fancy ways to do the rounded edges and frilly bits in CSS, but the quickest and easiest (but lazy way), is to crack open photoshop, or any imaging software and create two images... one rounded box with a sideways arrow, and one with a downwards arrow.

Set these as the background images for the selected and unselected CSS classes respectively. and your foretext should be rendered on top.
0
 
Tom KnowltonWeb developerAuthor Commented:
>>>>>Do you know what, there are many fancy ways to do the rounded edges and frilly bits in CSS, but the quickest and easiest (but lazy way), is to crack open photoshop, or any imaging software and create two images... one rounded box with a sideways arrow, and one with a downwards arrow.

Set these as the background images for the selected and unselected CSS classes respectively. and your foretext should be rendered on top.
-----------------

I really like this idea...I will probably go this route.

0
 
DjDezmondCommented:
Here is abit of a tutorial from the ASP.Net site that may help you along.
  http://www.asp.net/ajaxlibrary/act_Accordion.ashx 

Good luck...
0
 
Tom KnowltonWeb developerAuthor Commented:
thx
0
 
Tom KnowltonWeb developerAuthor Commented:
Thanks.

I found a tool for $85 from Likno.com that builds accordions.

Seems to be what I needed.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.