반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리

selectiion list customize 하기

2012. 11. 17. 22:15 | Posted by 솔웅


반응형
Customize selection lists


Firebug를 이용해서 jQuery Mobile에 의해 만들어진 selection list 내부의 HTML element들에 대해 assign 된 CSS 클래스들을 볼 수 있습니다. 여기서는 data-native-menu attribute가 "false"로 된 부분만 살펴보기로 하겠습니다. (native 가 아닌)

아래 샘플 코드가 있습니다. 이 코드는 엘리먼트의 그룹들을 구분해서 리스트를 display 합니다.



A selection list with groups of elements



<!DOCTYPE html>


<html> 

<head> 

  <meta name=viewport content="user-scalable=no,width=device-width" />

  <link rel=stylesheet href=jquery.mobile/jquery.mobile.css />

  <script src=jquery.js></script>

  <script src=jquery.mobile/jquery.mobile.js></script>

</head> 


<body> 


<div data-role=page id=home>

  <div data-role=header>

    <h1>Home</h1>

  </div>


  <div data-role=content>

    <span> Choose an apartment type: </span>

    <select data-native-menu=false>

      <optgroup label=Basic>

        <option value=1> 1 bedroom </option>

        <option value=2> 2 bedrooms </option>

        <option value=3> 3 bedrooms </option>

      </optgroup>

      <optgroup label=Premium>

        <option value=4> 4 bedrooms </option>

        <option value=5> 5 bedrooms </option>

      </optgroup>

    </select>

  </div>

</div>


</body>

</html>


tistory475_01.html


이 selection list 는 아래와 같이 display 될 겁니다.





Firebug에서 보시면 jQuery Mobile 에 의해 생성된 HTML code 를 보실 수 있습니다.





ui-selectmenu CSS class 가 있는 <div> element 안에는 ui-selectmenu-list class 가 있는 <ul> element 가 있습니다. 그 안에는 display 된 리스트 아이템들에 해당하는 <li> elements 들이 있구요. 각
<li> elements 들에는 ui-li and ui-btn classes 들이 있습니다. 그리고 그 리스트 안에 selected 아이템에는 ui-btn-active class 가 있구요.


<optgroup> element를 사용해서 jQuery MObile에 의해 삽입된 separator element 에는 ui-li, ui-li-divider, ui-btn and ui-bar-b classe 들이 있습니다.


이 CSS class들을 이용해서 selection list 를 새롭게 꾸며보겠습니다.


Styling elements of the selection list



<!DOCTYPE html>


<html> 

<head> 

  <meta name=viewport content="user-scalable=no,width=device-width" />

  <link rel=stylesheet href=jquery.mobile/jquery.mobile.css />

  <script src=jquery.js></script>

  <script src=jquery.mobile/jquery.mobile.js></script>

  

  <style type=text/css>

     .ui-selectmenu {

       padding : 15px;

     }

     .ui-li-divider.ui-bar-b {

       color : red;

       background : black;

     }

     .ui-li:not(.ui-li-divider) {

       font-style : italic;

     }

     .ui-li.ui-btn-active {

       color : white;

       background : grey;

     }

  </style>

</head> 


<body> 


<div data-role=page id=home>

  <div data-role=header>

    <h1>Home</h1>

  </div>


  <div data-role=content>

    <span> Choose an apartment type: </span>

    <select data-native-menu=false>

      <optgroup label=Basic>

        <option value=1> 1 bedroom </option>

        <option value=2> 2 bedrooms </option>

        <option value=3> 3 bedrooms </option>

      </optgroup>

      <optgroup label=Premium>

        <option value=4> 4 bedrooms </option>

        <option value=5> 5 bedrooms </option>

      </optgroup>

    </select>

  </div>

</div>


</body>

</html>


tistory475_02.html





반응형