Member Avatar for iamthwee

Hi I am trying to customize the superfish (jquery) menu. Does anyone have experience working with this?

http://users.tpg.com.au/j_birch/plugins/superfish/

Cheers.

Recommended Answers

All 5 Replies

Member Avatar for iamthwee

The main problems I am having is using rounded corners. There seems to be an example in the .css, but I don't know how to apply it.

Any help would be great!

Member Avatar for iamthwee

bump

That's not enough info. Post the code you're using or link to the site where you're using.
You can do rounded corner simply in CSS, most of the modern browsers and IE9 support this feature except IE-8 and older.
Example shows here.

Member Avatar for iamthwee

Thanks in light of this IE lack of support I'm gonna give rounded borders a miss.

Will post an example of what I'd like to achieve though.

Member Avatar for iamthwee

Solved it:

My css file is:

/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin:			0;
	padding:		0;
	list-style:		none;
}
.sf-menu {
	line-height:	1.0;
}
.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;
}
.sf-menu a {
	display:		block;
	position:		relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	left:			0;
	top:			2.5em; /* match top ul list item height */
	z-index:		99;
}
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:			10em; /* 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:			10em; /* match ul width */
	top:			0;
}

/*** DEMO SKIN ***/
.sf-menu {
	float:			left;
	margin-bottom:	1em;
}
.sf-menu a {
	border-left:	0px solid #000000;
	border-top:		0px solid #333333;
	padding: 		.75em 1em;
	text-decoration:none;
}
.sf-menu a, .sf-menu a:visited  { /* visited pseudo selector so IE6 applies text colour*/
	
      color:			#ffffff;
}
.sf-menu li {
      	background: url(../images/bk.png) repeat-x;
            color:			#cc6600;

}
.sf-menu li li {
	background: url(../images/bk.png) repeat-x;
      color:			#cc6600;

}
.sf-menu li li li {
	background: url(../images/bk.png) repeat-x;
      color:			#cc6600;

}
.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
	/*background:		#fff000;*/
      color: #cc6600;
	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:			.75em;
	top:			1.05em; /* IE6 only */
	width:			10px;
	height:			10px;
	text-indent: 	-999em;
	overflow:		hidden;
	background:		url('../images/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:			.8em;
	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('../images/shadow.png') no-repeat bottom right;
	padding: 0 8px 9px 0;
	-moz-border-radius-bottomleft: 17px;
	-moz-border-radius-topright: 17px;
	-webkit-border-top-right-radius: 17px;
	-webkit-border-bottom-left-radius: 17px;
}
.sf-shadow ul.sf-shadow-off {
	background: transparent;
}

And the way I call it from html is:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"> 
<html lang="en"> 
	<head> 
		<meta http-equiv="content-type" content="text/html;charset=utf-8"> 
		
		<link rel="stylesheet" type="text/css" href="css/superfish.css" media="screen"> 
		<script type="text/javascript" src="js/jquery-1.2.6.min.js"></script> 
		<script type="text/javascript" src="js/hoverIntent.js"></script> 
		<script type="text/javascript" src="js/superfish.js"></script> 
		<script type="text/javascript"> 
 
		// initialise plugins
		jQuery(function(){
			jQuery('ul.sf-menu').superfish(
                  {animation:{height:'show'},
                   delay:1200
                  });
		});
 
		</script> 
 
 
 
<title> my site</title> 
</head>

The doc type tag is important here.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.