ここにjqueryモバイルボタンの私のコードがあります
<a href="#" data-role="button" style="color:green; background-color:red";>
Search
</a>
ボタンの背景色を変更したいのですが、インラインスタイルを試しましたが、テキストの色が通常どおりに変更されません。
ありがとう
「background-color:」の代わりに「background:」を使用してください
<a href="[url]" data-role="button" style="background: green; color: white;">Search</a>
それをテストし、それは魅力のように動作します。
jQuery Mobileはウィジェットを初期化し、ボタンにリンクを作成するとHTML構造を追加します。この構造を使用して、ボタンウィジェットとその子孫要素をターゲットにして、変更するスタイルを変更できます。
HTML-
<a class="my-btn" data-role="button" href="#">
Search
</a>
CSS-
.ui-page .ui-content .ui-btn.my-btn .ui-btn-inner {
color : green;
background : red;
}
これは、.ui-btn-inner
要素の子孫であるa.ui-btn
要素(my-btn
クラスを追加した元のリンク)をターゲットにします。これは、jQuery Mobile疑似ページにあり、 background
とテキストcolor
です。
ここにデモがあります: http://jsfiddle.net/WZ9pf/
テキストの色は子孫要素に継承されるため、以前は機能していました。たとえば、color
要素にテキストbody
を設定すると、すべての要素がそのテキストを受け取りますcolor
ツリーのさらに下で別のものを指定しない場合。
したがって、ボタンに変換されるリンクに対してjQuery Mobileが何を行うかを確認できます。上記のHTMLは次のようになります。
<a href="#" data-role="button" class="my-btn ui-btn ui-btn-corner-all ui-shadow ui-btn-hover-c ui-btn-up-c" data-theme="c">
<span class="ui-btn-inner ui-btn-corner-all">
<span class="ui-btn-text">
Search
</span>
</span>
</a>
また、、グラデーションを簡単に作成したい場合は、次のツールが最適です。 http://www.colorzilla.com/gradient-エディター/
これは、事前に作成したグラデーションから取り出した赤いものです。 http://jsfiddle.net/WZ9pf/1/
これが「赤い」ボタンのサンプルです。
Data-theme = "f"をボタンタグに追加するだけで、独自のテーマ対応ボタンを作成できる推奨される方法になります
.ui-btn-up-f, .ui-btn-hover-f, .ui-btn-down-f {
color: white;
font-weight: bold;
text-decoration: none; }
.ui-btn-up-f {
border: 1px solid #711414;
background: #ab2525;
text-shadow: 0 -1px 1px #711414;
background-image: -moz-linear-gradient(top, #c44f4f, #ab2525);
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #c45e5e), color-stop(1, #9e3939));
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#c44f4f', EndColorStr='#ab2525')"; }
.ui-btn-hover-f {
border: 1px solid #6e0000;
background: #b54a4a;
text-shadow: 0 -1px 1px #690101;
background-image: -moz-linear-gradient(top, #d47272, #b54a4a);
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #d47272), color-stop(1, #b54a4a));
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#d47272', EndColorStr='#b54a4a')"; }
.ui-btn-down-f {
border: 1px solid #782323;
background: #c44f4f;
text-shadow: 0 -1px 1px #782323;
background-image: -moz-linear-gradient(top, #9e3939, #c44f4f);
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #9e3939), color-stop(1, #c44f4f));
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#9e3939', EndColorStr='#c44f4f')"; }
https://Gist.github.com/1057852 からのコード参照
JQueryモバイルスタイルはすべてテーマを使用して適用されます。リンクがコンテナーに追加されると、親バーまたはコンテンツボックスと一致するテーマ見本文字が自動的に割り当てられ、ボタンをカメレオンのように親コンテナーに視覚的に統合します。
したがって、「a」(デフォルトのテーマでは黒)のテーマを持つコンテンツコンテナー内に配置されたボタンには、「a」(デフォルトのテーマでは木炭)のボタンテーマが自動的に割り当てられます。
ここで既存のテーマを表示できます。 http://jquerymobile.com/demos/1.1.0-rc.1/docs/buttons/buttons-themes.html
独自に作成したい場合は、テーマローラーを使用できます。 http://jquerymobile.com/themeroller/
ソース: http://jquerymobile.com/demos/1.1.0-rc.1/docs/api/themes.html
ボタンが次のように定義されている場合:
<button type="button" id="yourbutton">Hello</button>
次に、背景を設定するコードは次のとおりです。
$('#yourbutton').parent().find('.ui-btn-inner').css("background-color",highcolor);
背景色だけでなく、背景画像のグラデーションを、私にとって最適な色に上書きする必要があります。
.ui-btn {
background: #00BCD4;
background-image: -moz-linear-gradient(top, #00BCD4, #00BCD4);
background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0, #00BCD4), color- stop(1, #00BCD4));
color:#FFFFFF;
text-shadow:0px 0px 0px ;
font-size: 40px;
border: none;
}
<button class="my-btn">submit</button>
cSS
.my-btn {
background:#ea5514 !important;
color:#ffffff !important;
}