SlideShare a Scribd company logo
Joomla! Day UK 2009
Joomla! Day UK 2009 Menus and how to make them look cool Providing a flexible platform for digital publishing and collaboration. Chris Davenport Joomla! Core Team
Choosing a template Choose primarily for layout Menus can usually be customised
All kinds of menus All menus are just HTML unordered lists
Basic menu HTML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Some tags and attributes stripped for clarity URLs shortened for clarity
Basic CSS styling ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Learn more:  http://www.w3schools.com/css/default.asp
CSS Box Model Margin Padding Border Content box Bounding box
Basic menu styling ,[object Object],ul.menu { list-style: none; margin: 0; padding: 0; } Default Joomla menu class Corresponding class selector Don't need any of these styles if you used a CSS reset script
Vertical menus
Vertical menus ,[object Object],[object Object],[object Object],[object Object],Gives all menu items a fixed width
Horizontal menus
Variable width horizontal ,[object Object],[object Object],[object Object]
Fixed width horizontal ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Basic styling ul.menu a { display: block; width: 8.5em; font-size: 2em; text-decoration: none; margin-top: 10px; padding: 5px 5px 5px 15px; color: #2b3d91; background-color: #f0f0f0; }
Web developer toolbar http://addons.mozilla.org/firefox/60/
Roll-over effects ,[object Object],[object Object],[object Object],[object Object],Reminder: The order of CSS pseudo-classes for link states is important. Mnemonic: “LoVe - HAte” Example ul.menu a:link, ul.menu a:visited { text-decoration: none; } ul.menu a:hover { text-decoration: underline; }
Roll-over effects: Example ul.menu a:hover { color: white; background-color: blue; } ul.menu a:link, ul.menu a:visited { color: blue; background-color: white; } ul.menu a:active { color: white; background-color: red; }
Roll-over effects: Borders ul.menu a:link, ul.menu a:visited { padding: 0.2em 0.4em; border-left: 0.4em solid #2b3d91; color: #2b3d91; background: #f6f6ff; } ul.menu a:hover { border-left: 0.4em solid #aea; color: white; background: #369; } ul.menu a:active { border-left: 0.4em solid red; }
Roll-over effects: submenus ul.menu li ul { position: absolute; width: 300px; left: -999em; } ul.menu li:hover ul { left: auto; margin-left: 352px; margin-top: -15px; } This shifts the sub-menu off the page  This brings the sub-menu back onto the page  Use margins to position the sub-menu http://www.alistapart.com/articles/dropdowns http://htmldog.com/articles/suckerfish/dropdowns/
Joomla menu CSS <ul class=&quot;menu&quot;> <li id=&quot;current&quot; class=&quot;active item1&quot;> <li class=&quot;parent item27&quot;> <li class=&quot;item2&quot;> Sample data: Home page This menu item has an ItemID of 1. There can be only one  current  menu item so it has an  id  of “current” This menu item is the  parent  of at least one sub-menu so it has a class of “parent”.
Joomla menu CSS <ul class=&quot;menu&quot;> <li class=&quot;item1&quot;> <li class=&quot;parent active item27&quot;> <ul> <li id=&quot;current&quot; class=&quot;active item34&quot;> Sample data: What's New in 1.5? page There can be many  active  menu items so they have a  class  of “active”
Joomla menu item states ul.menu li#current a:link, ul.menu li#current a:visited, ul.menu li.active a:link, ul.menu li.active a:visited { color: #f0f0f0; background: #2b3d91; border-left: 0.4em solid #fe3; } ul.menu li#current a:hover, ul.menu li.active a:hover { border-left: 0.4em solid #aea; } Remember: there's only one current item But there can be more than one active item Sometimes you may need to change the hover colour for the current item
Joomla menu CSS cascade /* Basic link styles - Joomla states */ ul.menu li#current a:link, ul.menu li#current a:visited, ul.menu li.active > a:link, ul.menu li.active > a:visited {} /* Basic menu styles */ ul.menu {} /* Hover states */ ul.menu a:hover, ul.menu li#current a:hover, ul.menu li.active a:hover {} /* Suckerfish - Hide/show sub-menus */ ul.menu li ul { position: absolute; left: -999em; } ul.menu li:hover ul { left: auto; margin-left: 342px; margin-top: -44px; } /* Basic link styles */ ul.menu a:link, ul.menu a:visited {} /* Styles for parent menus */ ul.menu li.parent {} /* Active states */ ul.menu a:active, ul.menu li#current a:active, ul.menu li.active a:active {}
Background images ul.menu a:link, ul.menu a:visited { padding: 5px 5px 5px 25px; background: url(../images/arrow.png) no-repeat center left; } The path to the image is relative to the CSS file, not the template root Increase the left padding to allow room for the background image Use “center” to centre the image vertically
Background images ul.menu a:link, ul.menu a:visited { margin-top: 10px; padding: 5px 5px 5px 25px; background: url(../images/button_0.png) no-repeat center left; color: white; } ul.menu a:hover { background: url(../images/button_1.png) no-repeat center left; }
Where to get button images ,[object Object],[object Object],[object Object],[object Object]
Joomla Menu Tag ID Module Manager -> Module: [Edit] <ul class=”menu” id=”main-menu”> Enter an id here and it will be added to the UL here Instead of ul.menu, use ul#main-menu
Joomla Menu Class Suffix <ul class=”menu-main-menu”> Module Manager -> Module: [Edit] Enter a suffix here and it will be added to the UL here
Joomla Menu Class Suffix Tip: If you enter a Menu Class Suffix with a leading space, you will get separate CSS classes in the UL. Tip: You can have as many classes in the UL as you like. <ul class=”menu main-menu”> <ul class=”menu main left rounded”>
Conclusion ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
If you can't be bothered Check out the extensions site: http://extensions.joomla.org/extensions/core-enhancements/menu-systems
Joomla menus Questions?
Copyright and Licence Copyright © 2009 Chris Davenport This presentation is available for use under the Joomla! Electronic Documentation License http://docs.joomla.org/JEDL

More Related Content

What's hot

Class 3 create an absolute layout with css abs position (aptana)
Class 3  create an absolute layout with css abs position (aptana)Class 3  create an absolute layout with css abs position (aptana)
Class 3 create an absolute layout with css abs position (aptana)Erin M. Kidwell
 
7 reasons why developers should love Joomla!
7 reasons why developers should love Joomla!7 reasons why developers should love Joomla!
7 reasons why developers should love Joomla!
Bartłomiej Krztuk
 
5.hello popescu2
5.hello popescu25.hello popescu2
5.hello popescu2
Razvan Raducanu, PhD
 
Joomla Custom Fields - the next level
Joomla Custom Fields - the next level Joomla Custom Fields - the next level
Joomla Custom Fields - the next level
Hans Kuijpers
 
InsideoutLegal's pick of WordPress themes
InsideoutLegal's pick of WordPress themesInsideoutLegal's pick of WordPress themes
InsideoutLegal's pick of WordPress themes
nzde
 
Down and dirty with hreflang - Smx munich 2014 - david sottimano
Down and dirty with hreflang - Smx munich 2014 - david sottimanoDown and dirty with hreflang - Smx munich 2014 - david sottimano
Down and dirty with hreflang - Smx munich 2014 - david sottimano
David Sottimano
 
How to Create simple One Page site
How to Create simple One Page siteHow to Create simple One Page site
How to Create simple One Page site
Moneer kamal
 
Dress Your WordPress with Child Themes
Dress Your WordPress with Child ThemesDress Your WordPress with Child Themes
Dress Your WordPress with Child Themes
Laurie M. Rauch
 
Class 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web designClass 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web designErin M. Kidwell
 
جيفيرا باي الساحل الشمالي
جيفيرا باي الساحل الشماليجيفيرا باي الساحل الشمالي
جيفيرا باي الساحل الشمالي
Reda Hassan
 
Earn money with banner and text ads for Clickbank
Earn money with banner and text ads for ClickbankEarn money with banner and text ads for Clickbank
Earn money with banner and text ads for Clickbank
Jaroslaw Istok
 
Earn money with banner and text ads for clickbank
Earn money with banner and text ads for clickbankEarn money with banner and text ads for clickbank
Earn money with banner and text ads for clickbank
Jaroslaw Istok
 
Templates81 special document
Templates81 special documentTemplates81 special document
Templates81 special document
Lan Nguyen
 
Templates81 special document
Templates81 special documentTemplates81 special document
Templates81 special document
Lan Nguyen
 

What's hot (19)

Slider goymon
Slider goymonSlider goymon
Slider goymon
 
Class 3 create an absolute layout with css abs position (aptana)
Class 3  create an absolute layout with css abs position (aptana)Class 3  create an absolute layout with css abs position (aptana)
Class 3 create an absolute layout with css abs position (aptana)
 
7 reasons why developers should love Joomla!
7 reasons why developers should love Joomla!7 reasons why developers should love Joomla!
7 reasons why developers should love Joomla!
 
5.hello popescu2
5.hello popescu25.hello popescu2
5.hello popescu2
 
Joomla Custom Fields - the next level
Joomla Custom Fields - the next level Joomla Custom Fields - the next level
Joomla Custom Fields - the next level
 
InsideoutLegal's pick of WordPress themes
InsideoutLegal's pick of WordPress themesInsideoutLegal's pick of WordPress themes
InsideoutLegal's pick of WordPress themes
 
Down and dirty with hreflang - Smx munich 2014 - david sottimano
Down and dirty with hreflang - Smx munich 2014 - david sottimanoDown and dirty with hreflang - Smx munich 2014 - david sottimano
Down and dirty with hreflang - Smx munich 2014 - david sottimano
 
How to Create simple One Page site
How to Create simple One Page siteHow to Create simple One Page site
How to Create simple One Page site
 
Dress Your WordPress with Child Themes
Dress Your WordPress with Child ThemesDress Your WordPress with Child Themes
Dress Your WordPress with Child Themes
 
Class 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web designClass 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web design
 
جيفيرا باي الساحل الشمالي
جيفيرا باي الساحل الشماليجيفيرا باي الساحل الشمالي
جيفيرا باي الساحل الشمالي
 
Tmx9
Tmx9Tmx9
Tmx9
 
Vip
VipVip
Vip
 
Earn money with banner and text ads for Clickbank
Earn money with banner and text ads for ClickbankEarn money with banner and text ads for Clickbank
Earn money with banner and text ads for Clickbank
 
Earn money with banner and text ads for clickbank
Earn money with banner and text ads for clickbankEarn money with banner and text ads for clickbank
Earn money with banner and text ads for clickbank
 
Templates81 special document
Templates81 special documentTemplates81 special document
Templates81 special document
 
Templates81 special document
Templates81 special documentTemplates81 special document
Templates81 special document
 
Sami direct presentation
Sami direct presentationSami direct presentation
Sami direct presentation
 
Document
DocumentDocument
Document
 

Viewers also liked

Joomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computingJoomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computing
Chris Davenport
 
Leave this to me. I'm British. I know how to queue.
Leave this to me.  I'm British.  I know how to queue.Leave this to me.  I'm British.  I know how to queue.
Leave this to me. I'm British. I know how to queue.
Chris Davenport
 
Space Situational Awareness Forum - UK SPACE AGENCY Presentation
Space Situational Awareness Forum - UK SPACE AGENCY PresentationSpace Situational Awareness Forum - UK SPACE AGENCY Presentation
Space Situational Awareness Forum - UK SPACE AGENCY Presentation
Space_Situational_Awareness
 
Joomla 3.4 Made Easy
Joomla 3.4 Made EasyJoomla 3.4 Made Easy
Joomla 3.4 Made Easy
JoomlaShine
 
JoomlaDay UK 2016 Presentation
JoomlaDay UK 2016 PresentationJoomlaDay UK 2016 Presentation
JoomlaDay UK 2016 Presentation
Chris Davenport
 
Infographic 6 steps to build a Joomla website
Infographic 6 steps to build a Joomla websiteInfographic 6 steps to build a Joomla website
Infographic 6 steps to build a Joomla website
JoomlaShine
 
Joomla 3.6 - The revolution in Joomla User Experience
Joomla 3.6 - The revolution in Joomla User ExperienceJoomla 3.6 - The revolution in Joomla User Experience
Joomla 3.6 - The revolution in Joomla User Experience
JoomlaShine
 

Viewers also liked (7)

Joomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computingJoomla in a world of ubiquitous computing
Joomla in a world of ubiquitous computing
 
Leave this to me. I'm British. I know how to queue.
Leave this to me.  I'm British.  I know how to queue.Leave this to me.  I'm British.  I know how to queue.
Leave this to me. I'm British. I know how to queue.
 
Space Situational Awareness Forum - UK SPACE AGENCY Presentation
Space Situational Awareness Forum - UK SPACE AGENCY PresentationSpace Situational Awareness Forum - UK SPACE AGENCY Presentation
Space Situational Awareness Forum - UK SPACE AGENCY Presentation
 
Joomla 3.4 Made Easy
Joomla 3.4 Made EasyJoomla 3.4 Made Easy
Joomla 3.4 Made Easy
 
JoomlaDay UK 2016 Presentation
JoomlaDay UK 2016 PresentationJoomlaDay UK 2016 Presentation
JoomlaDay UK 2016 Presentation
 
Infographic 6 steps to build a Joomla website
Infographic 6 steps to build a Joomla websiteInfographic 6 steps to build a Joomla website
Infographic 6 steps to build a Joomla website
 
Joomla 3.6 - The revolution in Joomla User Experience
Joomla 3.6 - The revolution in Joomla User ExperienceJoomla 3.6 - The revolution in Joomla User Experience
Joomla 3.6 - The revolution in Joomla User Experience
 

Similar to Joomla Day UK 2009 Menus Presentation

Css 2c (2) (1) (1) (2)
Css 2c (2) (1) (1) (2)Css 2c (2) (1) (1) (2)
Css 2c (2) (1) (1) (2)
gng542
 
Accessible code-patterns
Accessible code-patternsAccessible code-patterns
Accessible code-patterns
Francesco Bedussi
 
DG Group - Active Or Passive Website
DG Group - Active Or Passive WebsiteDG Group - Active Or Passive Website
DG Group - Active Or Passive Website
Franco De Bonis
 
Html structure
Html structureHtml structure
Html structureakkias
 
Drupal Omega and Responsive Build out
Drupal Omega and Responsive Build outDrupal Omega and Responsive Build out
Drupal Omega and Responsive Build outTim Whelan
 
Twitter bootstrap on rails
Twitter bootstrap on railsTwitter bootstrap on rails
Twitter bootstrap on rails
Masakuni Kato
 
CSS Disable Button - How to Disable Buttons Using CSS - Blogs
CSS Disable Button - How to Disable Buttons Using CSS - BlogsCSS Disable Button - How to Disable Buttons Using CSS - Blogs
CSS Disable Button - How to Disable Buttons Using CSS - Blogs
RonDosh
 
Supercharged HTML & CSS
Supercharged HTML & CSSSupercharged HTML & CSS
Supercharged HTML & CSS
Max Kraszewski
 
Stylesheets for Online Help - Scott DeLoach, ClickStart
Stylesheets for Online Help - Scott DeLoach, ClickStartStylesheets for Online Help - Scott DeLoach, ClickStart
Stylesheets for Online Help - Scott DeLoach, ClickStart
Scott DeLoach
 
BEM it! Introduction to BEM methodology
BEM it! Introduction to BEM methodologyBEM it! Introduction to BEM methodology
BEM it! Introduction to BEM methodology
Varya Stepanova
 
Resnick webconversion2
Resnick webconversion2Resnick webconversion2
Resnick webconversion2comedyjant
 
Css(handbook)
Css(handbook)Css(handbook)
Css(handbook)
MD. Anamul Haque
 
Html basics 8 frame
Html basics 8 frameHtml basics 8 frame
Html basics 8 frameH K
 
Intro to CSS
Intro to CSSIntro to CSS
Intro to CSS
Michelle Ames
 
Modules and Components Introduction in Joomla! 2.5
Modules and Components Introduction in Joomla! 2.5Modules and Components Introduction in Joomla! 2.5
Modules and Components Introduction in Joomla! 2.5
Vishwash Gaur
 
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menuBuilding websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menuGiang Nguyễn
 
WordPress as a Content Management System
WordPress as a Content Management SystemWordPress as a Content Management System
WordPress as a Content Management System
Valent Mustamin
 
Bootstrap [part 2]
Bootstrap [part 2]Bootstrap [part 2]
Bootstrap [part 2]
Ghanshyam Patel
 
Modifying your themes design - Learning CSS - Atlanta WordPress users group
Modifying your themes design - Learning CSS - Atlanta WordPress users groupModifying your themes design - Learning CSS - Atlanta WordPress users group
Modifying your themes design - Learning CSS - Atlanta WordPress users group
Evan Mullins
 

Similar to Joomla Day UK 2009 Menus Presentation (20)

Css
CssCss
Css
 
Css 2c (2) (1) (1) (2)
Css 2c (2) (1) (1) (2)Css 2c (2) (1) (1) (2)
Css 2c (2) (1) (1) (2)
 
Accessible code-patterns
Accessible code-patternsAccessible code-patterns
Accessible code-patterns
 
DG Group - Active Or Passive Website
DG Group - Active Or Passive WebsiteDG Group - Active Or Passive Website
DG Group - Active Or Passive Website
 
Html structure
Html structureHtml structure
Html structure
 
Drupal Omega and Responsive Build out
Drupal Omega and Responsive Build outDrupal Omega and Responsive Build out
Drupal Omega and Responsive Build out
 
Twitter bootstrap on rails
Twitter bootstrap on railsTwitter bootstrap on rails
Twitter bootstrap on rails
 
CSS Disable Button - How to Disable Buttons Using CSS - Blogs
CSS Disable Button - How to Disable Buttons Using CSS - BlogsCSS Disable Button - How to Disable Buttons Using CSS - Blogs
CSS Disable Button - How to Disable Buttons Using CSS - Blogs
 
Supercharged HTML & CSS
Supercharged HTML & CSSSupercharged HTML & CSS
Supercharged HTML & CSS
 
Stylesheets for Online Help - Scott DeLoach, ClickStart
Stylesheets for Online Help - Scott DeLoach, ClickStartStylesheets for Online Help - Scott DeLoach, ClickStart
Stylesheets for Online Help - Scott DeLoach, ClickStart
 
BEM it! Introduction to BEM methodology
BEM it! Introduction to BEM methodologyBEM it! Introduction to BEM methodology
BEM it! Introduction to BEM methodology
 
Resnick webconversion2
Resnick webconversion2Resnick webconversion2
Resnick webconversion2
 
Css(handbook)
Css(handbook)Css(handbook)
Css(handbook)
 
Html basics 8 frame
Html basics 8 frameHtml basics 8 frame
Html basics 8 frame
 
Intro to CSS
Intro to CSSIntro to CSS
Intro to CSS
 
Modules and Components Introduction in Joomla! 2.5
Modules and Components Introduction in Joomla! 2.5Modules and Components Introduction in Joomla! 2.5
Modules and Components Introduction in Joomla! 2.5
 
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menuBuilding websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
Building websites-with-joomla-1-5-sample-chapter-chapter-7-the-menus-menu
 
WordPress as a Content Management System
WordPress as a Content Management SystemWordPress as a Content Management System
WordPress as a Content Management System
 
Bootstrap [part 2]
Bootstrap [part 2]Bootstrap [part 2]
Bootstrap [part 2]
 
Modifying your themes design - Learning CSS - Atlanta WordPress users group
Modifying your themes design - Learning CSS - Atlanta WordPress users groupModifying your themes design - Learning CSS - Atlanta WordPress users group
Modifying your themes design - Learning CSS - Atlanta WordPress users group
 

More from Chris Davenport

Taking a REST and being HAPI
Taking a REST and being HAPITaking a REST and being HAPI
Taking a REST and being HAPI
Chris Davenport
 
JAB2012 Smart Search Presentation
JAB2012 Smart Search PresentationJAB2012 Smart Search Presentation
JAB2012 Smart Search Presentation
Chris Davenport
 
Template changes for Joomla 1.6
Template changes for Joomla 1.6Template changes for Joomla 1.6
Template changes for Joomla 1.6
Chris Davenport
 
Joomla PLT Summit Feedback
Joomla PLT Summit FeedbackJoomla PLT Summit Feedback
Joomla PLT Summit Feedback
Chris Davenport
 
Template tuning for high performance
Template tuning for high performanceTemplate tuning for high performance
Template tuning for high performance
Chris Davenport
 
Joomla Day UK 2009 Template Design Presentation
Joomla Day UK 2009 Template Design PresentationJoomla Day UK 2009 Template Design Presentation
Joomla Day UK 2009 Template Design Presentation
Chris Davenport
 
Joomla Day UK 2009 Basic Templates
Joomla Day UK 2009 Basic TemplatesJoomla Day UK 2009 Basic Templates
Joomla Day UK 2009 Basic Templates
Chris Davenport
 

More from Chris Davenport (7)

Taking a REST and being HAPI
Taking a REST and being HAPITaking a REST and being HAPI
Taking a REST and being HAPI
 
JAB2012 Smart Search Presentation
JAB2012 Smart Search PresentationJAB2012 Smart Search Presentation
JAB2012 Smart Search Presentation
 
Template changes for Joomla 1.6
Template changes for Joomla 1.6Template changes for Joomla 1.6
Template changes for Joomla 1.6
 
Joomla PLT Summit Feedback
Joomla PLT Summit FeedbackJoomla PLT Summit Feedback
Joomla PLT Summit Feedback
 
Template tuning for high performance
Template tuning for high performanceTemplate tuning for high performance
Template tuning for high performance
 
Joomla Day UK 2009 Template Design Presentation
Joomla Day UK 2009 Template Design PresentationJoomla Day UK 2009 Template Design Presentation
Joomla Day UK 2009 Template Design Presentation
 
Joomla Day UK 2009 Basic Templates
Joomla Day UK 2009 Basic TemplatesJoomla Day UK 2009 Basic Templates
Joomla Day UK 2009 Basic Templates
 

Recently uploaded

Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 

Recently uploaded (20)

Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 

Joomla Day UK 2009 Menus Presentation

  • 2. Joomla! Day UK 2009 Menus and how to make them look cool Providing a flexible platform for digital publishing and collaboration. Chris Davenport Joomla! Core Team
  • 3. Choosing a template Choose primarily for layout Menus can usually be customised
  • 4. All kinds of menus All menus are just HTML unordered lists
  • 5.
  • 6.
  • 7. CSS Box Model Margin Padding Border Content box Bounding box
  • 8.
  • 10.
  • 12.
  • 13.
  • 14. Basic styling ul.menu a { display: block; width: 8.5em; font-size: 2em; text-decoration: none; margin-top: 10px; padding: 5px 5px 5px 15px; color: #2b3d91; background-color: #f0f0f0; }
  • 15. Web developer toolbar http://addons.mozilla.org/firefox/60/
  • 16.
  • 17. Roll-over effects: Example ul.menu a:hover { color: white; background-color: blue; } ul.menu a:link, ul.menu a:visited { color: blue; background-color: white; } ul.menu a:active { color: white; background-color: red; }
  • 18. Roll-over effects: Borders ul.menu a:link, ul.menu a:visited { padding: 0.2em 0.4em; border-left: 0.4em solid #2b3d91; color: #2b3d91; background: #f6f6ff; } ul.menu a:hover { border-left: 0.4em solid #aea; color: white; background: #369; } ul.menu a:active { border-left: 0.4em solid red; }
  • 19. Roll-over effects: submenus ul.menu li ul { position: absolute; width: 300px; left: -999em; } ul.menu li:hover ul { left: auto; margin-left: 352px; margin-top: -15px; } This shifts the sub-menu off the page This brings the sub-menu back onto the page Use margins to position the sub-menu http://www.alistapart.com/articles/dropdowns http://htmldog.com/articles/suckerfish/dropdowns/
  • 20. Joomla menu CSS <ul class=&quot;menu&quot;> <li id=&quot;current&quot; class=&quot;active item1&quot;> <li class=&quot;parent item27&quot;> <li class=&quot;item2&quot;> Sample data: Home page This menu item has an ItemID of 1. There can be only one current menu item so it has an id of “current” This menu item is the parent of at least one sub-menu so it has a class of “parent”.
  • 21. Joomla menu CSS <ul class=&quot;menu&quot;> <li class=&quot;item1&quot;> <li class=&quot;parent active item27&quot;> <ul> <li id=&quot;current&quot; class=&quot;active item34&quot;> Sample data: What's New in 1.5? page There can be many active menu items so they have a class of “active”
  • 22. Joomla menu item states ul.menu li#current a:link, ul.menu li#current a:visited, ul.menu li.active a:link, ul.menu li.active a:visited { color: #f0f0f0; background: #2b3d91; border-left: 0.4em solid #fe3; } ul.menu li#current a:hover, ul.menu li.active a:hover { border-left: 0.4em solid #aea; } Remember: there's only one current item But there can be more than one active item Sometimes you may need to change the hover colour for the current item
  • 23. Joomla menu CSS cascade /* Basic link styles - Joomla states */ ul.menu li#current a:link, ul.menu li#current a:visited, ul.menu li.active > a:link, ul.menu li.active > a:visited {} /* Basic menu styles */ ul.menu {} /* Hover states */ ul.menu a:hover, ul.menu li#current a:hover, ul.menu li.active a:hover {} /* Suckerfish - Hide/show sub-menus */ ul.menu li ul { position: absolute; left: -999em; } ul.menu li:hover ul { left: auto; margin-left: 342px; margin-top: -44px; } /* Basic link styles */ ul.menu a:link, ul.menu a:visited {} /* Styles for parent menus */ ul.menu li.parent {} /* Active states */ ul.menu a:active, ul.menu li#current a:active, ul.menu li.active a:active {}
  • 24. Background images ul.menu a:link, ul.menu a:visited { padding: 5px 5px 5px 25px; background: url(../images/arrow.png) no-repeat center left; } The path to the image is relative to the CSS file, not the template root Increase the left padding to allow room for the background image Use “center” to centre the image vertically
  • 25. Background images ul.menu a:link, ul.menu a:visited { margin-top: 10px; padding: 5px 5px 5px 25px; background: url(../images/button_0.png) no-repeat center left; color: white; } ul.menu a:hover { background: url(../images/button_1.png) no-repeat center left; }
  • 26.
  • 27. Joomla Menu Tag ID Module Manager -> Module: [Edit] <ul class=”menu” id=”main-menu”> Enter an id here and it will be added to the UL here Instead of ul.menu, use ul#main-menu
  • 28. Joomla Menu Class Suffix <ul class=”menu-main-menu”> Module Manager -> Module: [Edit] Enter a suffix here and it will be added to the UL here
  • 29. Joomla Menu Class Suffix Tip: If you enter a Menu Class Suffix with a leading space, you will get separate CSS classes in the UL. Tip: You can have as many classes in the UL as you like. <ul class=”menu main-menu”> <ul class=”menu main left rounded”>
  • 30.
  • 31. If you can't be bothered Check out the extensions site: http://extensions.joomla.org/extensions/core-enhancements/menu-systems
  • 33. Copyright and Licence Copyright © 2009 Chris Davenport This presentation is available for use under the Joomla! Electronic Documentation License http://docs.joomla.org/JEDL