?
Solved

Drupal menu block

Posted on 2010-09-12
9
Medium Priority
?
515 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
Get proactive database performance tuning online

At Percona’s web store you can order full Percona Database Performance Audit in minutes. Find out the health of your database, and how to improve it. Pay online with a credit card. Improve your database performance now!

 

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 2000 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

Learn how to optimize MySQL for your business need

With the increasing importance of apps & networks in both business & personal interconnections, perfor. has become one of the key metrics of successful communication. This ebook is a hands-on business-case-driven guide to understanding MySQL query parameter tuning & database perf

Question has a verified solution.

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

Drupal 5.x currently does not have a production-ready patch bundle to allow for split read & writes for a MySQL master/slave replication setup. After reading a open discussion/thread on the Drupal site (http://drupal.org/node/147160 (http://drupal.o…
A big percent of today’s marketing activity is performed through the online environment. The marketing strategies that have existed a decade ago no longer relate to what’s happening today. We’re currently facing a revolutionary era, called the digit…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…

800 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