在JQUERY Mobile上应用CSS

时间:2016-12-20 06:54:26

标签: jquery html css jquery-mobile

我是JQuery mobile的新手。我发现将一些CSS应用到我的JQUERY移动脚本非常困难。

我需要做以下事情:

  • 列表项
  • 更改页面颜色
  • 更改导航栏按钮颜色
  • 将导航栏按钮高度更改为48px
  • 对齐导航栏按钮中间的文字
  • 重新调整导航栏图标大小

然后关于列表视图:

  • 将列表高度更改为48px
  • 更改列表颜色
  • 将列表字体大小更改为16px

请帮助解决这个问题!



<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<script type="text/javascript" src="http://dev.jtsage.com/cdn/spinbox/latest/jqm-spinbox.min.js"></script>
</head>
<body>
<style>
  h2 {
    text-align: center;
}
p {
    text-align: center;
}
.navTxtSize {
    font-size: 16px;
    height: 48px;
    text-align: middle;
}
.liListItem {
    height: 48px;
}
#hea .ui-btn {
    height: 48px;
}
</style>
<div data-role="page" id="pageone">
  <div data-role="header" data-position="fixed">
    <div>
      <h2>CSS</h2>
    </div>
    <div data-role="navbar" data-iconpos="top" id="hea" class="ui-body-c">
      <ul>
        <li> <a href="#inputDialog" data-icon="plus">
          <div class="navTxtSize">Add Item</div>
          </a></li>
        <li><a onclick="checkList()" data-icon="delete">
          <div  class="navTxtSize">Delete ALL</div>
          </a></li>
        <li><a onclick="loadItemsForList1()" data-icon="shop" >
          <div  class = "navTxtSize">Shop</div>
          </a></li>
      </ul>
    </div>
  </div>
  <div data-role="main" class="ui-content">
    <form class="ui-filterable">
      <input id="myFilter" placeholder="Enter Item Name" data-type="search">
    </form>
    <ul data-role="listview" data-filter="true" data-input="#myFilter" data-autodividers="true" data-inset="true" id = "itemsList" data-split-icon="delete">
      <li class=liListItem"><a class="listItem">Example1</a><a class="removal"></a></li>
      <li class=liListItem"><a class="listItem">Example2</a><a class="removal"></a></li>
      <li class=liListItem"><a class="listItem">Example3</a><a class="removal"></a></li>
    </ul>
  </div>
</div>
</body>
</html>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

这些是您需要的相关选择器:

导航栏:

.ui-navbar li .ui-btn {
  background-color: blanchedalmond !important;
}

列表视图:

.ui-listview li > .ui-btn {
  background-color: aliceblue;
  height: 48px;
}

图标:

.ui-btn::after {
    background-size: 32px !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 1.5em;
    background-color: darksalmon;
}

但是还有一些工作需要调整图标边距和边框半径。

您可以将此作为起点使用,因为您还没有准确指定图标的大小。

此外,由于图标大小增加,列表视图右侧的按钮需要一些自定义样式:

.ui-listview>li.ui-li-has-alt>.ui-btn+.ui-btn {
  width: 68px;
}

.ui-btn-icon-notext:after, .ui-btn-icon-left:after, .ui-btn-icon-right:after {
  margin-left: -16px;
}

我删除了所有的CSS类,只显示了一个干净的结果,只有在这里覆盖了JQM样式:https://jsfiddle.net/a3ckna8w/4/

请注意,jQuery Mobile可能会覆盖您的CSS样式,因此您应将其标记为!important。有关解决原因的原因,请参阅此处:Html5 - Css styles are overriden by jquery mobile style