compass-jquery-mobile-plugin 0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +48 -0
- data/lib/compass-jquery-mobile-plugin.rb +1 -0
- data/stylesheets/_button.scss +118 -0
- data/stylesheets/_collapsible.scss +45 -0
- data/stylesheets/_controlgroup.scss +69 -0
- data/stylesheets/_core.scss +158 -0
- data/stylesheets/_dialog.scss +15 -0
- data/stylesheets/_forms.checkboxradio.scss +37 -0
- data/stylesheets/_forms.fieldcontain.scss +20 -0
- data/stylesheets/_forms.select.scss +72 -0
- data/stylesheets/_forms.slider.scss +104 -0
- data/stylesheets/_forms.textinput.scss +72 -0
- data/stylesheets/_grids.scss +31 -0
- data/stylesheets/_headerfooter.scss +33 -0
- data/stylesheets/_jquery-mobile.scss +39 -0
- data/stylesheets/_listview.scss +170 -0
- data/stylesheets/_navbar.scss +103 -0
- data/stylesheets/_theme.scss +128 -0
- data/stylesheets/_transitions.scss +217 -0
- data/stylesheets/helpers/_mixins.scss +21 -0
- data/stylesheets/themes/_a.scss +116 -0
- data/stylesheets/themes/_b.scss +115 -0
- data/stylesheets/themes/_c.scss +105 -0
- data/stylesheets/themes/_d.scss +114 -0
- data/stylesheets/themes/_e.scss +114 -0
- data/stylesheets/themes/wyke/_a.scss +106 -0
- data/stylesheets/themes/wyke/_b.scss +105 -0
- data/stylesheets/themes/wyke/_c.scss +95 -0
- data/stylesheets/themes/wyke/_d.scss +104 -0
- data/stylesheets/themes/wyke/_e.scss +104 -0
- data/templates/project/jquery-mobile/ajax-loader.png +0 -0
- data/templates/project/jquery-mobile/form-check-off.png +0 -0
- data/templates/project/jquery-mobile/form-check-on.png +0 -0
- data/templates/project/jquery-mobile/form-radio-off.png +0 -0
- data/templates/project/jquery-mobile/form-radio-on.png +0 -0
- data/templates/project/jquery-mobile/icon-search-black.png +0 -0
- data/templates/project/jquery-mobile/icons-18-black.png +0 -0
- data/templates/project/jquery-mobile/icons-18-white.png +0 -0
- data/templates/project/jquery-mobile/icons-36-black.png +0 -0
- data/templates/project/jquery-mobile/icons-36-white.png +0 -0
- data/templates/project/jquery.mobile-1.0a2.min.js +99 -0
- data/templates/project/manifest.rb +1 -0
- metadata +123 -0
data/README.markdown
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
jQuery Mobile for Compass
|
2
|
+
=========================
|
3
|
+
A port of the existing jQuery Mobile CSS file into SASS.
|
4
|
+
|
5
|
+
This is currently for the Alpha release of jQuery Mobile. It will be updated as and when the jQuery team release more versions.
|
6
|
+
|
7
|
+
Where possible the theme elements have been kept inline with the jQuery Mobile rules, so that maintenance of rules in the future will be simple and also makes users new to this project find the cross over easy.
|
8
|
+
|
9
|
+
Install
|
10
|
+
=======
|
11
|
+
From the command line:
|
12
|
+
|
13
|
+
gem install compass-jquery-mobile-plugin
|
14
|
+
cd my_compass_project
|
15
|
+
|
16
|
+
Add the following to your compass configuration:
|
17
|
+
|
18
|
+
require 'compass-jquery-mobile-plugin'
|
19
|
+
|
20
|
+
The run from the command line:
|
21
|
+
|
22
|
+
compass install jquery-mobile
|
23
|
+
|
24
|
+
To one of your sass stylesheets to import the jquery-mobile styles add:
|
25
|
+
|
26
|
+
@import 'jquery-mobile'
|
27
|
+
|
28
|
+
Information
|
29
|
+
===========
|
30
|
+
|
31
|
+
CURRENT RELEASE
|
32
|
+
---------------
|
33
|
+
jQuery Mobile 1.0a2 (Alpha 2)
|
34
|
+
|
35
|
+
WORK DONE SO FAR
|
36
|
+
----------------
|
37
|
+
* The themes have been separated out into partials
|
38
|
+
* Themes have been tidied a bit with mixins, whilst keeping the basic jQuery Mobile rules in place
|
39
|
+
* Compass has been brought in to remove as much maintenance of vendor specific css
|
40
|
+
|
41
|
+
TODO
|
42
|
+
----
|
43
|
+
* More tidying of non-theme related rules. e.g. better use of mixins and variables
|
44
|
+
* Add more customisation of theme options. So far only done what is required for own projects
|
45
|
+
|
46
|
+
NOTE
|
47
|
+
----
|
48
|
+
Using git-flow to have a consistent usage of git
|
@@ -0,0 +1 @@
|
|
1
|
+
Compass::Frameworks.register("jquery-mobile", :path => "#{File.dirname(__FILE__)}/..")
|
@@ -0,0 +1,118 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery Mobile Framework
|
3
|
+
* Copyright (c) jQuery Project
|
4
|
+
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
|
5
|
+
*/
|
6
|
+
|
7
|
+
.ui-btn {
|
8
|
+
display: block;
|
9
|
+
text-align: center;
|
10
|
+
cursor: pointer;
|
11
|
+
position: relative;
|
12
|
+
margin: .5em 5px;
|
13
|
+
padding: 0;
|
14
|
+
&:focus, a:focus {
|
15
|
+
outline: none; } }
|
16
|
+
|
17
|
+
.ui-header .ui-btn, .ui-footer .ui-btn, .ui-bar .ui-btn {
|
18
|
+
display: inline-block;
|
19
|
+
font-size: 13px;
|
20
|
+
margin: 0; }
|
21
|
+
|
22
|
+
.ui-btn-inline {
|
23
|
+
display: inline-block; }
|
24
|
+
|
25
|
+
.ui-btn-inner {
|
26
|
+
padding: .6em 25px;
|
27
|
+
display: block;
|
28
|
+
height: 100%;
|
29
|
+
text-overflow: ellipsis;
|
30
|
+
overflow: hidden;
|
31
|
+
white-space: nowrap;
|
32
|
+
position: relative; }
|
33
|
+
|
34
|
+
.ui-btn-text {}
|
35
|
+
|
36
|
+
.ui-header .ui-btn-inner, .ui-footer .ui-btn-inner, .ui-bar .ui-btn-inner {
|
37
|
+
padding: .4em 8px .5em; }
|
38
|
+
|
39
|
+
.ui-btn-icon-notext {
|
40
|
+
display: block;
|
41
|
+
width: 20px;
|
42
|
+
height: 20px;
|
43
|
+
padding: 1px 0px 1px 2px;
|
44
|
+
text-indent: -9999px;
|
45
|
+
.ui-btn-inner {
|
46
|
+
padding: 0; }
|
47
|
+
.ui-btn-text {
|
48
|
+
position: absolute;
|
49
|
+
left: -999px; } }
|
50
|
+
|
51
|
+
.ui-btn-icon-left .ui-btn-inner {
|
52
|
+
padding-left: 33px; }
|
53
|
+
|
54
|
+
.ui-header .ui-btn-icon-left .ui-btn-inner, .ui-footer .ui-btn-icon-left .ui-btn-inner, .ui-bar .ui-btn-icon-left .ui-btn-inner {
|
55
|
+
padding-left: 27px; }
|
56
|
+
|
57
|
+
.ui-btn-icon-right .ui-btn-inner {
|
58
|
+
padding-right: 33px; }
|
59
|
+
|
60
|
+
.ui-header .ui-btn-icon-right .ui-btn-inner, .ui-footer .ui-btn-icon-right .ui-btn-inner.ui-bar .ui-btn-icon-right .ui-btn-inner {
|
61
|
+
padding-right: 27px; }
|
62
|
+
|
63
|
+
.ui-btn-icon-top .ui-btn-inner {
|
64
|
+
padding-top: 33px; }
|
65
|
+
|
66
|
+
.ui-header .ui-btn-icon-top .ui-btn-inner.ui-footer .ui-btn-icon-top .ui-btn-inner, .ui-bar .ui-btn-icon-top .ui-btn-inner {
|
67
|
+
padding-top: 27px; }
|
68
|
+
|
69
|
+
.ui-btn-icon-bottom .ui-btn-inner {
|
70
|
+
padding-bottom: 33px; }
|
71
|
+
|
72
|
+
.ui-header .ui-btn-icon-bottom .ui-btn-inner, .ui-footer .ui-btn-icon-bottom .ui-btn-inner, .ui-bar .ui-btn-icon-bottom .ui-btn-inner {
|
73
|
+
padding-bottom: 27px; }
|
74
|
+
|
75
|
+
/*btn icon positioning*/
|
76
|
+
|
77
|
+
.ui-btn-icon-notext .ui-icon {
|
78
|
+
display: block; }
|
79
|
+
|
80
|
+
.ui-btn-icon-left .ui-icon, .ui-btn-icon-right .ui-icon {
|
81
|
+
position: absolute;
|
82
|
+
top: 50%;
|
83
|
+
margin-top: -9px; }
|
84
|
+
|
85
|
+
.ui-btn-icon-top .ui-icon, .ui-btn-icon-bottom .ui-icon {
|
86
|
+
position: absolute;
|
87
|
+
left: 50%;
|
88
|
+
margin-left: -9px; }
|
89
|
+
|
90
|
+
.ui-btn-icon-left .ui-icon {
|
91
|
+
left: 10px; }
|
92
|
+
|
93
|
+
.ui-btn-icon-right .ui-icon {
|
94
|
+
right: 10px; }
|
95
|
+
|
96
|
+
.ui-header .ui-btn-icon-left .ui-icon, .ui-footer .ui-btn-icon-left .ui-icon, .ui-bar .ui-btn-icon-left .ui-icon {
|
97
|
+
left: 4px; }
|
98
|
+
|
99
|
+
.ui-header .ui-btn-icon-right .ui-icon, .ui-footer .ui-btn-icon-right .ui-icon, .ui-bar .ui-btn-icon-right .ui-icon {
|
100
|
+
right: 4px; }
|
101
|
+
|
102
|
+
.ui-header .ui-btn-icon-top .ui-icon, .ui-footer .ui-btn-icon-top .ui-icon, .ui-bar .ui-btn-icon-top .ui-icon {
|
103
|
+
top: 4px; }
|
104
|
+
|
105
|
+
.ui-header .ui-btn-icon-bottom .ui-icon, .ui-footer .ui-btn-icon-bottom .ui-icon, .ui-bar .ui-btn-icon-bottom .ui-icon {
|
106
|
+
bottom: 4px; }
|
107
|
+
|
108
|
+
.ui-btn-icon-top .ui-icon {
|
109
|
+
top: 5px; }
|
110
|
+
|
111
|
+
.ui-btn-icon-bottom .ui-icon {
|
112
|
+
bottom: 5px; }
|
113
|
+
|
114
|
+
/*hiding native button,inputs */
|
115
|
+
|
116
|
+
.ui-btn-hidden {
|
117
|
+
position: absolute;
|
118
|
+
left: -9999px; }
|
@@ -0,0 +1,45 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery Mobile Framework
|
3
|
+
* Copyright (c) jQuery Project
|
4
|
+
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
|
5
|
+
*/
|
6
|
+
|
7
|
+
.ui-collapsible-contain {
|
8
|
+
margin: .5em 0; }
|
9
|
+
|
10
|
+
.ui-collapsible-heading {
|
11
|
+
font-size: 16px;
|
12
|
+
display: block;
|
13
|
+
margin: 0 -8px;
|
14
|
+
padding: 0;
|
15
|
+
border-width: 0 0 1px 0;
|
16
|
+
position: relative;
|
17
|
+
a {
|
18
|
+
text-align: left;
|
19
|
+
margin: 0;
|
20
|
+
.ui-btn-inner {
|
21
|
+
padding-left: 40px; }
|
22
|
+
span.ui-btn {
|
23
|
+
position: absolute;
|
24
|
+
left: 6px;
|
25
|
+
top: 50%;
|
26
|
+
margin: -12px 0 0 0;
|
27
|
+
width: 20px;
|
28
|
+
height: 20px;
|
29
|
+
padding: 1px 0px 1px 2px;
|
30
|
+
text-indent: -9999px;
|
31
|
+
.ui-btn-inner {
|
32
|
+
padding: 0; }
|
33
|
+
.ui-icon {
|
34
|
+
left: 2px; } } } }
|
35
|
+
|
36
|
+
.ui-collapsible-heading-status {
|
37
|
+
position: absolute;
|
38
|
+
left: -99999px; }
|
39
|
+
|
40
|
+
.ui-collapsible-content {
|
41
|
+
display: block;
|
42
|
+
padding: 10px 0 10px 8px; }
|
43
|
+
|
44
|
+
.ui-collapsible-content-collapsed {
|
45
|
+
display: none; }
|
@@ -0,0 +1,69 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery Mobile Framework
|
3
|
+
* Copyright (c) jQuery Project
|
4
|
+
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
|
5
|
+
*/
|
6
|
+
|
7
|
+
.ui-controlgroup, fieldset.ui-controlgroup {
|
8
|
+
padding: 0;
|
9
|
+
margin: .5em 0 1em; }
|
10
|
+
|
11
|
+
.ui-bar .ui-controlgroup {
|
12
|
+
margin: 0 .3em; }
|
13
|
+
|
14
|
+
.ui-controlgroup-label {
|
15
|
+
font-size: 16px;
|
16
|
+
line-height: 1.4;
|
17
|
+
font-weight: normal;
|
18
|
+
margin: 0 0 .3em; }
|
19
|
+
|
20
|
+
.ui-controlgroup-controls {
|
21
|
+
display: block;
|
22
|
+
width: 95%; }
|
23
|
+
|
24
|
+
.ui-controlgroup li {
|
25
|
+
list-style: none; }
|
26
|
+
|
27
|
+
.ui-controlgroup-vertical {
|
28
|
+
.ui-btn {
|
29
|
+
margin: 0;
|
30
|
+
border-bottom-width: 0; }
|
31
|
+
div {
|
32
|
+
&.ui-checkbox, &.ui-radio {
|
33
|
+
margin: 0;
|
34
|
+
border-bottom-width: 0; } }
|
35
|
+
.ui-controlgroup-last {
|
36
|
+
border-bottom-width: 1px; } }
|
37
|
+
|
38
|
+
.ui-controlgroup-horizontal {
|
39
|
+
padding: 0;
|
40
|
+
.ui-btn {
|
41
|
+
margin: 0 -5px 0 0;
|
42
|
+
display: inline-block; }
|
43
|
+
div {
|
44
|
+
&.ui-checkbox, &.ui-radio {
|
45
|
+
margin: 0 -5px 0 0;
|
46
|
+
display: inline-block; }
|
47
|
+
&.ui-checkbox .ui-btn, &.ui-radio .ui-btn, &.ui-checkbox:last-child, &.ui-radio:last-child {
|
48
|
+
margin-right: 0; } }
|
49
|
+
.ui-controlgroup-last {
|
50
|
+
margin-right: 0; } }
|
51
|
+
|
52
|
+
.ui-controlgroup {
|
53
|
+
.ui-checkbox label, .ui-radio label {
|
54
|
+
font-size: 16px; } }
|
55
|
+
|
56
|
+
/* conflicts with listview..
|
57
|
+
.ui-controlgroup .ui-btn-icon-notext { width: 30px; height: 30px; text-indent: -9999px; }
|
58
|
+
.ui-controlgroup .ui-btn-icon-notext .ui-btn-inner { padding: 5px 6px 5px 5px; }
|
59
|
+
*/
|
60
|
+
|
61
|
+
@media screen and (min-width: 480px) {
|
62
|
+
.ui-controlgroup-label {
|
63
|
+
vertical-align: top;
|
64
|
+
display: inline-block;
|
65
|
+
width: 20%;
|
66
|
+
margin: 0 2% 0 0; }
|
67
|
+
.ui-controlgroup-controls {
|
68
|
+
width: 60%;
|
69
|
+
display: inline-block; } }
|
@@ -0,0 +1,158 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery Mobile Framework
|
3
|
+
* Copyright (c) jQuery Project
|
4
|
+
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
|
5
|
+
* Note: Code is in draft form and is subject to change
|
6
|
+
*/
|
7
|
+
|
8
|
+
/* some unsets - more probably needed */
|
9
|
+
|
10
|
+
.ui-mobile fieldset, .ui-page {
|
11
|
+
padding: 0;
|
12
|
+
margin: 0; }
|
13
|
+
|
14
|
+
.ui-mobile {
|
15
|
+
a img, fieldset {
|
16
|
+
border: 0; }
|
17
|
+
body {
|
18
|
+
margin: 0;
|
19
|
+
overflow-x: hidden;
|
20
|
+
-webkit-backface-visibility: hidden;
|
21
|
+
-webkit-text-size-adjust: none;
|
22
|
+
min-height: 100%; } }
|
23
|
+
|
24
|
+
/* responsive page widths */
|
25
|
+
|
26
|
+
/*orientations from js are available */
|
27
|
+
|
28
|
+
.portrait, .landscape {}
|
29
|
+
|
30
|
+
/* "page" containers - full-screen views, one should always be in view post-pageload */
|
31
|
+
|
32
|
+
.ui-page {
|
33
|
+
top: 0;
|
34
|
+
left: 0;
|
35
|
+
width: 100%;
|
36
|
+
min-height: 100%;
|
37
|
+
position: absolute;
|
38
|
+
display: none;
|
39
|
+
-webkit-backface-visibility: hidden;
|
40
|
+
border: 0; }
|
41
|
+
|
42
|
+
.ui-page-active {
|
43
|
+
display: block;
|
44
|
+
overflow: visible; }
|
45
|
+
|
46
|
+
/* loading screen */
|
47
|
+
|
48
|
+
.ui-loading {
|
49
|
+
overflow: hidden !important;
|
50
|
+
body {
|
51
|
+
overflow: hidden !important; }
|
52
|
+
.ui-loader {
|
53
|
+
display: block; }
|
54
|
+
.ui-page {
|
55
|
+
overflow: hidden; } }
|
56
|
+
|
57
|
+
.ui-loader {
|
58
|
+
display: none;
|
59
|
+
position: absolute;
|
60
|
+
opacity: .85;
|
61
|
+
z-index: 10;
|
62
|
+
top: 75px;
|
63
|
+
left: 50%;
|
64
|
+
width: 200px;
|
65
|
+
margin-left: -130px;
|
66
|
+
padding: 20px 30px;
|
67
|
+
h1 {
|
68
|
+
font-size: 15px;
|
69
|
+
text-align: center; }
|
70
|
+
.ui-icon {
|
71
|
+
position: static;
|
72
|
+
display: block;
|
73
|
+
opacity: .9;
|
74
|
+
margin: 0 auto;
|
75
|
+
width: 35px;
|
76
|
+
height: 35px;
|
77
|
+
background-color: transparent; } }
|
78
|
+
|
79
|
+
/*headers, content panels*/
|
80
|
+
|
81
|
+
.ui-bar, .ui-body {
|
82
|
+
position: relative;
|
83
|
+
padding: .4em 15px;
|
84
|
+
overflow: hidden;
|
85
|
+
display: block;
|
86
|
+
clear: both; }
|
87
|
+
|
88
|
+
.ui-bar {
|
89
|
+
font-size: 16px;
|
90
|
+
margin: 0;
|
91
|
+
h1, h2, h3, h4, h5, h6 {
|
92
|
+
margin: 0;
|
93
|
+
padding: 0;
|
94
|
+
font-size: 16px;
|
95
|
+
display: inline-block; } }
|
96
|
+
|
97
|
+
.ui-page {
|
98
|
+
.ui-header, .ui-footer {
|
99
|
+
position: relative; } }
|
100
|
+
|
101
|
+
.ui-header {
|
102
|
+
.ui-btn-left {
|
103
|
+
position: absolute;
|
104
|
+
left: 10px;
|
105
|
+
top: .4em; }
|
106
|
+
.ui-title {
|
107
|
+
text-align: center;
|
108
|
+
font-size: 16px;
|
109
|
+
display: block;
|
110
|
+
margin: .6em 90px .8em;
|
111
|
+
padding: 0;
|
112
|
+
text-overflow: ellipsis;
|
113
|
+
overflow: hidden;
|
114
|
+
white-space: nowrap;
|
115
|
+
outline: 0 !important; } }
|
116
|
+
|
117
|
+
.ui-footer .ui-title {
|
118
|
+
text-align: center;
|
119
|
+
font-size: 16px;
|
120
|
+
display: block;
|
121
|
+
margin: .6em 90px .8em;
|
122
|
+
padding: 0;
|
123
|
+
text-overflow: ellipsis;
|
124
|
+
overflow: hidden;
|
125
|
+
white-space: nowrap;
|
126
|
+
outline: 0 !important; }
|
127
|
+
|
128
|
+
.ui-header .ui-btn-right {
|
129
|
+
position: absolute;
|
130
|
+
right: 10px;
|
131
|
+
top: .4em; }
|
132
|
+
|
133
|
+
/*content area*/
|
134
|
+
|
135
|
+
.ui-content {
|
136
|
+
border-width: 0;
|
137
|
+
overflow: visible;
|
138
|
+
padding: 15px; }
|
139
|
+
|
140
|
+
.ui-page-fullscreen .ui-content {
|
141
|
+
padding: 0; }
|
142
|
+
|
143
|
+
/* icons sizing */
|
144
|
+
|
145
|
+
.ui-icon {
|
146
|
+
width: 18px;
|
147
|
+
height: 18px; }
|
148
|
+
|
149
|
+
/* fullscreen class on ui-content div */
|
150
|
+
|
151
|
+
.ui-fullscreen img {
|
152
|
+
max-width: 100%; }
|
153
|
+
|
154
|
+
/* non-js content hiding */
|
155
|
+
|
156
|
+
.ui-nojs {
|
157
|
+
position: absolute;
|
158
|
+
left: -9999px; }
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery Mobile Framework
|
3
|
+
* Copyright (c) jQuery Project
|
4
|
+
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
|
5
|
+
*/
|
6
|
+
|
7
|
+
.ui-dialog {
|
8
|
+
.ui-header, .ui-content, .ui-footer {
|
9
|
+
margin: 15px;
|
10
|
+
position: relative; }
|
11
|
+
.ui-header, .ui-footer {
|
12
|
+
z-index: 10;
|
13
|
+
width: auto; }
|
14
|
+
.ui-content, .ui-footer {
|
15
|
+
margin-top: -15px; } }
|