diff --git a/erpnext/website/templates/html/outer.html b/erpnext/website/templates/html/outer.html
index 47184fa..25525af 100644
--- a/erpnext/website/templates/html/outer.html
+++ b/erpnext/website/templates/html/outer.html
@@ -14,18 +14,33 @@
 				<ul class="nav">
 					{% for page in top_bar_items %}
 						{% if not page.parent_label %}
-						<li data-label="{{ page.label }}">
-							<a href="{{ page.url }}" {{ page.target }}>
+						<li data-label="{{ page.label }}"
+							{% if page.child_items %}
+								class="dropdown"
+							{% endif %}>
+							<a href="{{ page.url or '#' }}" 
+								{% if page.child_items %}
+									class="dropdown-toggle"
+									onclick="return false;"
+								{% endif %}
+								{{ page.target or ''}}>
 							{{ page.label }}
 							{% if page.child_items %}
+								<b class="caret"></b>
+							</a>
 								<ul class="dropdown-menu">
 								{% for child in page.child_items %}
 									<li data-label="{{ child.label }}">
-										<a href="{{ child.url }}" {{ child.target }}>
+										<a href="{{ child.url }}" {{ child.target or '' }}>
+											{{ child.label }}
+										</a>
+									</li>
 								{% endfor %}
 								</ul>
+							{% else %}
+							</a>
 							{% endif %}
-							</a></li>
+							</li>
 						{% endif %}
 					{% endfor %}
 				</ul>
@@ -35,7 +50,8 @@
 				</ul>
 			</div>
 			</div>
-			</div>	
+			</div>
+			<script>$('.dropdown-toggle').dropdown()</script>
 	</header>
 	<div id="body_div">
 		<div class="content" id="page-{{ name }}" style="display: block;">
diff --git a/erpnext/website/web_cache.py b/erpnext/website/web_cache.py
index 7b3de0a..9892dac 100644
--- a/erpnext/website/web_cache.py
+++ b/erpnext/website/web_cache.py
@@ -139,11 +139,26 @@
 		env dict for outer template
 	"""
 	import webnotes
+	
+	all_top_items = webnotes.conn.sql("""\
+		select * from `tabTop Bar Item`
+		where parent='Website Settings' and parentfield='top_bar_items'
+		order by idx asc""", as_dict=1)
+		
+	top_items = [d for d in all_top_items if not d['parent_label']]
+	
+	# attach child items to top bar
+	for d in all_top_items:
+		if d['parent_label']:
+			for t in top_items:
+				if t['label']==d['parent_label']:
+					if not 'child_items' in t:
+						t['child_items'] = []
+					t['child_items'].append(d)
+					break
+	
 	return {
-		'top_bar_items': webnotes.conn.sql("""\
-			select * from `tabTop Bar Item`
-			where parent='Website Settings' and parentfield='top_bar_items'
-			order by idx asc""", as_dict=1),
+		'top_bar_items': top_items,
 	
 		'footer_items': webnotes.conn.sql("""\
 			select * from `tabTop Bar Item`
