У меня была точно такая же проблема.В итоге я просто взял HTML-код из моей панели навигации после того, как jQuery Mobile его стилизовал (через FireBug), и я использовал этот код, который выглядит примерно так:
<div id="edge_menu">
<ul data-role="listview" data-inset="true" class="ui-listview ui-listview-inset ui-corner-all ui-shadow">
<li data-theme="c" class="ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-corner-top ui-btn-up-c">
<div class="ui-btn-inner ui-li ui-corner-top" aria-hidden="true">
<div class="ui-btn-text">
<a href="/m/default.html" class="ui-link-inherit">Home</a>
</div>
<span class="ui-icon ui-icon-arrow-r ui-icon-shadow"></span>
</div>
</li>
</ul>
</div>
Если вы изучите классы, которые jQuery Mobile добавляет,на самом деле довольно легко изменить классы, чтобы изменить тему или параметры округления / тени.
Другой обходной путь, который я нашел для работы, - это разместить ваше меню внутри data-role="page"
div при загрузке страницы, пусть jQuery Mobileстиль страницы, а затем переместите div меню из data-role="page"
div, чтобы быть потомком тега body
.