thadunno Posted June 1, 2014 Share Posted June 1, 2014 Hi,I was wondering if someone can tell me, is there a way to make the subcategories in the top menu list vertically instead of horizontally when hovered over? I'm trying to achieve the following Cat 1 Cat 2 Cat 3 Cat 4 Sub 1 Sub 2 Sub 3 Is this possible? Thanks! Link to comment Share on other sites More sharing options...
vekia Posted June 1, 2014 Share Posted June 1, 2014 you have to change superfish-modified.css file (themes/YOUR_THEME/css/modules/blocktopmenu/css/superfish-modified.css use there styles from prestashop 1.5 /*** ESSENTIAL STYLES ***/ .sf-contener { clear: both; } .sf-right { margin-right: 14px; float: right; width: 7px; } .sf-menu, .sf-menu * { margin: 0; padding: 0; list-style: none; } .sf-menu { margin: 10px 0; padding:0; width:980px;/* 980 */ background: #383838; } .sf-menu ul { position: absolute; top: -999em; width: 10em; /* left offset of submenus need to match (see below) */ } .sf-menu ul li { width: 100%; } .sf-menu li:hover { visibility: inherit; /* fixes IE7 'sticky bug' */ } .sf-menu li { float: left; position: relative; border-right: 1px solid #777; } .sf-menu a { display: block; position: relative; color:#fff; text-shadow:0 1px 0 #333; } .sf-menu li:hover ul, .sf-menu li.sfHover ul { left: 0; top: 34px; /* match top ul list item height */ z-index: 99; width:auto } ul.sf-menu li:hover li ul, ul.sf-menu li.sfHover li ul { top: -999em; } ul.sf-menu li li:hover ul, ul.sf-menu li li.sfHover ul { left: 200px; /* match ul width */ top: 0; } ul.sf-menu li li:hover li ul, ul.sf-menu li li.sfHover li ul { top: -999em; } ul.sf-menu li li li:hover ul, ul.sf-menu li li li.sfHover ul { left: 200px; /* match ul width */ top: 0; } /*** DEMO SKIN ***/ .sf-menu { float: left; margin-bottom: 1em; } .sf-menu a { display:block; margin-right:2px; padding: 0 22px 0 20px; line-height:34px; border: 0; text-decoration:none; } .sf-menu a, .sf-menu a:visited { /* visited pseudo selector so IE6 applies text colour*/ color: #fff; white-space:nowrap; } .sf-menu li li { background: rgba(113, 113, 113, 0.9); } .sf-menu li li li { background: rgba(113, 113, 113, 0.9); } .sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active { background: #4E4E4E; } .sf-menu ul li:hover, .sf-menu ul li.sfHover, .sf-menu ul li a:focus, .sf-menu ul li a:hover, .sf-menu ul li a:active { background: #4e4e4e; outline: 0; } /*** arrows **/ .sf-menu a.sf-with-ul { padding-right: 2.25em; min-width: 1px; /* trigger IE7 hasLayout so spans position accurately */ } .sf-sub-indicator { position: absolute; display: block; right: 10px; top: 1.05em; /* IE6 only */ width: 10px; height: 10px; text-indent: -999em; overflow: hidden; background: url('../img/arrows-ffffff.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */ } a > .sf-sub-indicator { /* give all except IE6 the correct values */ top: 11px; background-position: 0 -100px; /* use translucent arrow for modern browsers*/ } /* apply hovers to modern browsers */ a:focus > .sf-sub-indicator, a:hover > .sf-sub-indicator, a:active > .sf-sub-indicator, li:hover > a > .sf-sub-indicator, li.sfHover > a > .sf-sub-indicator { background-position: -10px -100px; /* arrow hovers for modern browsers*/ } /* point right for anchors in subs */ .sf-menu ul .sf-sub-indicator { background-position: -10px 0; } .sf-menu ul a > .sf-sub-indicator { background-position: 0 0; } /* apply hovers to modern browsers */ .sf-menu ul a:focus > .sf-sub-indicator, .sf-menu ul a:hover > .sf-sub-indicator, .sf-menu ul a:active > .sf-sub-indicator, .sf-menu ul li:hover > a > .sf-sub-indicator, .sf-menu ul li.sfHover > a > .sf-sub-indicator { background-position: -10px 0; /* arrow hovers for modern browsers*/ } /*** shadows for all but IE6 ***/ .sf-shadow ul { background: url('../img/shadow.png') no-repeat bottom right; padding: 0 8px 9px 0; -moz-border-bottom-left-radius: 17px; -moz-border-top-right-radius: 17px; -webkit-border-top-right-radius: 17px; -webkit-border-bottom-left-radius: 17px; } .sf-shadow ul.sf-shadow-off { background: transparent; } li.sf-search { background: inherit; float: right; line-height: 25px; } li.sf-search input { -moz-border-radius: 0 5px 5px 0; padding: 3px 0; padding-left: 20px; margin: 6px 6px 0 0; background: #fff url('../img/search.gif') no-repeat left center; border:1px solid #777 } /* hack IE7 */ .sf-menu a, .sf-menu a:visited {height:34px !IE;} .sf-menu li li { width:200px; background:#726f72 !IE; } Link to comment Share on other sites More sharing options...
Henki Posted June 12, 2014 Share Posted June 12, 2014 Hi line 24 you quoted : "left offset of submenus need to match (see below)" but i didn't find the matches. I need to upgrade my submenu width because i've Long name menus. Is it possible ? Link to comment Share on other sites More sharing options...
miki22 Posted October 8, 2014 Share Posted October 8, 2014 Work perfect for me. Thx vekia Link to comment Share on other sites More sharing options...
benedettopresta Posted October 23, 2014 Share Posted October 23, 2014 Hey Vekia, would it be possible to only add some space between 1st and 2nd line with the standard horizontal menu ex: From this: Cat 1 Cat 2 Cat 3 Cat 4 Sub 1 Sub 2 Sub 3 Sub 4 Sub 5Sub 6 Sub 7 Sub 8 Sub 9 To this Cat 1 Cat 2 Cat 3 Cat 4 Sub 1 Sub 2 Sub 3 Sub 4 Sub 5 Sub 6 Sub 7 Sub 8 Sub 9 Link to comment Share on other sites More sharing options...
Recommended Posts