There's nothing wrong with your code.
Navbar
color theme is blue by default and data-theme="b"
is that blue color. Change it to a to see the difference.
Working jsFiddle
example: http://jsfiddle.net/Gajotres/vTBGa/
<div data-role="navbar"><!-- navbar -->
<ul>
<li><a href="index.html" data-ajax="false" data-transition="flip" ><img src="../../images/icons/SearchLarge.png" height="30px;" width="30px;"/></a></li>
<li><a href="../../index.html" data-ajax="false" data-theme="b"><img src="../../images/icons/ApplicationL.png" height="30px;" width="30px;"/></a></li>
<li><a href="../app/index.html" data-ajax="false" data-theme="b"><img src="../../images/icons/App3.png" height="30px;" width="30px;"/></a></li>
<li><a href="#" data-ajax="false" data-theme="b"><img src="../../images/icons/View.png" height="30px;" width="10px;"/></a></li>
<li><a href="#" data-ajax="false" data-theme="a"><img src="../../images/icons/Last2.png" height="30px;" width="30px;"/></a></li>
</ul>
</div><!-- /navbar -->
If you are manually changing background color it must be done with a !important
override because in any other case your custom CSS
will be discarded.
#other-color {
background: red !important;
}
In case you want to find more about how jQuery Mobile handles markup enhancements, then take a look at this ARTICLE, it is my personal blog. There can be bound much much more then this, also this topic is discussed in the chapter: