Quantcast
Channel: Issues for Drupal core
Viewing all articles
Browse latest Browse all 292377

Remove "ul.menu" dependency to prevent theme clashes

$
0
0

Follow up for #1938044: Prefix all toolbar classes to prevent theme clashes

My theme overrides theme_menu_tree() with it's own html code. Navbar and Toolbar menus seem to expect that class ul.menu exists, but it doesn't. Navbar should expect only it's own classes and add more classes if required. e.g. use ul.navbar-submenu. Bartic theme also injects a clearfix to navbar via bartic_menu_tree() that is not expected/wished, too. To avoid these type of theming issues toolbar need to add it's own theming for the navbar menus. system.menu.css also injects an unwanted margin with ul.menu, see #1938742: Navbar should override margin in system.css (ul.menu li) that has been fixed in navbar and does not exists in toolbar.

Example code in themes that cause such type of issues:

<?php
/**
* Returns HTML for a wrapper for a menu sub-tree.
*/
function mytheme_menu_tree($variables) {
  return
'<ul class="foo-menu">'. $variables['tree'] . '</ul>';
}
?>

Screenshot that shows the bug:


Viewing all articles
Browse latest Browse all 292377

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>