Solved

Drupal menu block

Posted on 2010-09-12
9
513 Views
Last Modified: 2012-05-10
Hello Experts,

I was wondering, is there a way to add  a different class to the each link in the drupal menu block? I can add a class to the block using the block class module, but I don't know how to add a class to each link of the menu block.
Attached goes a pic of the structure of my meny block using firebug.
I will really appreciate your help.

Thanks in advance,

Winter

PS. Also, do you know how can I rename that .leaf class?
Picture-9.png
0
Comment
Question by:glepiza
  • 5
  • 4
9 Comments
 
LVL 17

Expert Comment

by:Thomas4019
ID: 33658303
Could probably be done using the advice here, http://drupal.org/node/201948.

What exactly are you trying to achieve?
0
 

Author Comment

by:glepiza
ID: 33658342
Hi Thomas!, thanks for your answer, I am going to take a look at it.

I am trying to add an sprite image to the block menu to show active, hover and and visited state. That is why I need at least to have the class of each link


Thanks :)
0
 
LVL 17

Expert Comment

by:Thomas4019
ID: 33658377
Hmm, I don't see why you couldn't just use the classes you've already been given. The A tags have the "active" class if they are the page currently open. You can use pseudo classes for the rest, http://www.w3schools.com/css/css_pseudo_classes.asp.

The you could apply a CSS property like the attached. If it doesn't make sense refer to these,
http://www.w3schools.com/Css/pr_text_text-indent.asp
http://www.w3schools.com/css/pr_background-image.asp


Sounds like you want something similar to this, http://drupal.org/project/menu_icons. The module probably could be hacked a bit to do what you want.
.menu a {
  text-ident: 30px;
  background-image:url('regular.gif');
}

.menu a.active {
  text-ident: 30px;
  background-image:url('active.gif');
}

.menu a:hover {
  text-ident: 30px;
  background-image:url('hover.gif');
}

.menu a:visited {
  text-ident: 30px;
  background-image:url('visited.gif');
}

Open in new window

0
Free eBook: Backup on AWS

Everything you need to know about backup and disaster recovery with AWS, for FREE!

 

Author Comment

by:glepiza
ID: 33658552
Thanks Thomas,

I think I am going to use your advice. I wanted to add specific class to each link to be able to use one sprite image that contains the three link states instead of using different images for each link state. To use an sprite image I need to use a different background position to each link class.  But I have a feeling that is going to take me longer than I expect to add those classes unless I use some javascript, what do you think?

Thanks again!

0
 
LVL 17

Accepted Solution

by:
Thomas4019 earned 500 total points
ID: 33658575
Yeah. sprites cannot be easily embedded unless you add HTML using a Drupal theme function.
0
 

Author Closing Comment

by:glepiza
ID: 33658591
Thanks Thomas!
0
 

Author Comment

by:glepiza
ID: 33658596
Could you please let me know what documentation should I read to add theme functions? I may want to give it a try later on, not today though :) Thanks.
0
 
LVL 17

Expert Comment

by:Thomas4019
ID: 33659108
0
 

Author Comment

by:glepiza
ID: 33659255
Thanks so much Thomas, I would give you more points if I could. Thanks very much.

Winter
0

Featured Post

Backup Solution for AWS

Read about how CloudBerry Backup fully integrates your backups with Amazon S3 and Amazon Glacier to provide military-grade encryption and dramatically cut storage costs on any platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Text File via Putty into Access 15 95
How can I upload sample data in drupal on godaddy? 1 104
delivery website through cdn 4 141
hard drive contents erase software 8 104
DotNetNuke (DNN) (http://www.dotnetnuke.com) is a leading open source web content management system (CMS) and application development framework for Microsoft .NET. Localization is an essential part of building websites, especially in countries that …
RTL (right to left) web applications aiming for audiences speaking languages like Hebrew or Arabic, are generally more complicated than the same applications aiming for audiences speaking Latin based languages. The main difference lies of course …
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question