Twitterブートストラップボタンのスタイリング


96

Twitter-Bootstrapボタンは驚くほど美しい。スクロールしてみてください

ブートストラップボタンのスクリーンショット

ただし、色に制限があります。

ブートストラップによって美しく簡単に作成された美しいホバーオーバー効果を維持しながら、ボタンのベースカラーを変更できる方法はありますか?

私は、ツイッターがそれらの効果を維持するために使用するcss / javascriptがどのように見えるかを完全に認識していません。


7
ボタンの少ない定義を見つけて編集します。次に、CSSをで再コンパイルしlesscます。CSSファイルを直接編集しないでください。それは維持できません。
nalply 2013

回答:


25

基本的に、Twitter Bootstrapのボタンは「.btn {}」によってCSSで制御されます。あなたがしなければならないことは、CSSファイルに行き、それが "btn"と書かれている場所を見つけ、色の設定を変更することです。ただし、ボタンをハイライト表示したときにボタンの色を変更する必要があるなどの理由で、これを行うだけでは簡単ではありません。そのためには、CSSで「.btn:hover {}などの他のタグを探す必要があります。 」など

それを変更するには、CSSを変更する必要があります。そのファイルへのクイックリンクは次のとおりです。

https://github.com/twbs/bootstrap/blob/master/dist/css/bootstrap.css


33
これは特に美しい解決策ではありません。LESSに基づく他のソリューションを使用してください。または、ウェブサイトの変数エディターを介してブートストラップをカスタマイズします。
Jesper 2013年

5
オーバーライドするだけです...最後にCSSをロードすると、問題を解決するのに役立ちます。同じストラップのブートストラップを使用する
Jaimin MosLake

1
ええ、私は間違いなくbootstrap.cssを変更することに反対するでしょう。ジャイミンが言ったように、単にそれを上書きします。
Tim Ludwinski、2015

176

私はこれをあなたのオーバーライドに入れるのが最も簡単な方法だと思いました。私の想像を絶する色の選択でごめんなさい

ブートストラップ4-Alpha SASS

.my-btn {
  //@include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border);
  @include button-variant(red, white, blue);
}

Bootstrap 4 Alpha SASSの例

ブートストラップ3 LESS

.my-btn {
  //.button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);
  .button-variant(red; white; blue);
}

Bootstrap 3 LESSの例

ブートストラップ3 SASS

.my-btn {
  //@include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border);
  @include button-variant(red, white, blue);
}

ブートストラップ3 SASSの例

ブートストラップ2.3 LESS

.btn-primary {
  //.buttonBackground(@btnBackground, @btnBackgroundHighlight, @grayDark, 0 1px 1px rgba(255,255,255,.75));
  .buttonBackground(red, white);
}

ブートストラップ2.3 LESSの例

ブートストラップ2.3 SASS

.btn-primary {
  //@include buttonBackground($btnPrimaryBackground, $btnPrimaryBackgroundHighlight); 
  @include buttonBackground(red, white); 
}

ホバー/アクティブの面倒を見る

コメントから、黒を使用するときにボタンを暗くする代わりに明るくしたい場合(または単に反転したい場合)、次のようにクラスを少し拡張する必要があります。

Bootstrap 3 SASS Ligthen

.my-btn {
  // @include button-variant($btn-primary-color, $btn-primary-bg, $btn-primary-border);
  $color: #fff;
  $background: #000;
  $border: #333;
  @include button-variant($color, $background, $border);
  // override the default darkening with lightening
  &:hover,
  &:focus,
  &.focus,
  &:active,
  &.active,
  .open > &.dropdown-toggle {
    color: $color;
    background-color: lighten($background, 20%); //10% default
    border-color: lighten($border, 22%); // 12% default
  }
}

Bootstrap 3 SASS Lightenの例


17
あなたは素晴らしいです。
バサラト2013年

7
これをどのようにscssに変換しますか?
ドレイファズ2013年

1
次に、実行lesscしてCSSへの変更をコンパイルします。
nalply 2013

7
Dreyfuzz私はscssを使用していませんが、サードパーティのsassブートストラップを見ると、.btn-primary {@include buttonBackground($btnPrimaryBackground, $btnPrimaryBackgroundHighlight); }`変数を適切に変更しているようです(ひどいフォーマットで申し訳ありません)
chrisan

.buttonBackground is undefined in main.lessは自分のレッサーに何かを含める必要がありますか?
Himalay Majumdar 2014

32

たとえば危険ボタンのように、CSSの色を上書きできます。

.btn-danger { border-color: #[insert color here]; background-color: #[insert color here];

.btn-danger:hover { border-color: #[insert color here]; background-color: #[insert color here]; }

7
私はあなたもスタイル:focus:active整える必要があると思います、さもなければあなたはクリック/ドラッグで奇妙な色を時々得る...
サイモン・イースト

シンプルで気に入っています。
NinoŠkopac2017年

1
検索でこれを見つけ、ボタンをクリックしてドラッグするとデフォルトの色が表示さ.btn-primary:active:focus {れる場合は、そのケースを選択して上書きする必要があります
Shane Reustle

27

ここに良いリソースがあります:http : //charliepark.org/bootstrap_buttons/

色を変えて、実際の効果を確認できます。


2
これはコンフィギュレーターです。顧客のプロトタイプを急いで作成している場合は簡単です。ただし、長期的には維持できません。コンフィギュレーターが消えた場合はどうなりますか?したがって、実際にlesscは、より良いソリューションです。
nalply 2013

このソリューションが大好きですが、正確な色を取得するためにrgb / rgbaを入力する方法があったらいいのにと思います。
セドリック

@nalply lessは、そのステップをすでに実行している場合は優れていますが、この「コンフィギュレーター」はcssを生成するために必要なすべてを実行します。それをドロップして行きます。その後はコンフィギュレータは必要ありません。
moodboom 2017年

21

bootstrap.css(バージョン3)を読み込んだ後で独自のカスタムCSSファイルを既に読み込んでいる場合は、これらの2つのCSSスタイルをcustom.cssに追加すると、デフォルトのボタンスタイルのブートストラップのデフォルトが上書きされます。

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {

  background-color: #A6A8C1;
  border-color: #31347B;
 }

.btn
{
  background-color: #9F418F;
  border-color: #9F418F;
}

12

CSS値を1つずつ変更する代わりに、LESSを使用することをお勧めしますBootstrapのGithubにはLESSバージョンがありますhttps : //github.com/twbs/bootstrap

LESSを使用すると、色を変更する変数を定義できるため、非常に便利です。カラーを1回定義すると、LESSは値をグローバルに変更するCSSファイルをコンパイルします。時間と労力を節約できます。


11

ブートストラップボタンのスタイルを完全にオーバーライドするには、プロパティのリストをオーバーライドする必要があります。以下の例を参照してください。

    .btn-primary, .btn-primary:hover, .btn-primary:focus, .btn-primary.focus, 
    .btn-primary:active, .btn-primary.active, .btn-primary:visited,
    .btn-primary:active:hover, .btn-primary.active:hover{
        background-color: #F19425;
        color:#fff;
        border: none;
        outline: none;
    }

リストされているすべてのスタイルを使用していない場合は、ボタンでアクションを実行するとデフォルトのスタイルが表示されます。たとえば、ボタンをクリックしてボタンからマウスポインターを削除すると、デフォルトの色が表示されます。または、ボタンを押したままにすると、デフォルトの色が表示されます。したがって、オーバーライドするすべての疑似スタイルをリストしました。


この方法は素晴らしいです。LESSブートストラップのカスタマイズに次ぐ2番目
Gianluca Ghettini '25年


5

またはhttp://twitterbootstrapbuttons.w3masters.nl/を試してください。HTMLカラー入力に基づいてボタンのCSSを作成します。ブートストラップcssの後にcssを追加します。ボタンの3つのスタイル(ライト、ダーク、スピン)を提供します。


1
これはコンフィギュレーター(一種)です。顧客のプロトタイプを急いで作成している場合は非常に簡単です。ただし、長期的には維持できません。コンフィギュレーターが消えた場合はどうなりますか?したがって、実際にlesscは、より良いソリューションです。
nalply 2013

5

これは非常に簡単で効率的な方法です。CSSに、ボタンに適用する色をクラスに追加します。

.my-btn{
    background: #0099cc;
    color: #ffffff;
}
.my-btn:hover { 
  border-color: #C0C0C0; 
  background-color: #C0C0C0; 
}

ブートストラップボタンまたはリンクにスタイルを追加します。

<a href="xxx" class="btn btn-info my-btn">aaa</a>

3

Twitterのブートストラップブートストラップ3.0.0、Twitterのボタンが平坦です。からカスタマイズできますhttp://getbootstrap.com/customizeます。。ボタンの色、ボーダーラジオなど

また、HTMLコードやその他の機能を見つけることができます http://twitterbootstrap.org/bootstrap-css-buttons

ブートストラップ2.3.2ボタンはグラデーションですが、3.0.0(新しいリリース)はフラットで、よりかっこよく見えます。

また、このリソースからブートストラップ全体の外観とスタイルをカスタマイズするために見つけることができます:http : //twitterbootstrap.org/top-5-customizing-bootstrap-resources/


1

私はこれが古いスレッドであることを知っていますが、別の見方を追加します。オーバーライドを使用することは実際にはコードの匂いが少しし、大規模なプロジェクトではすぐに手に負えなくなると断言します。今日は、ボタン、明日のモーダル、翌日はドロップダウンなどをオーバーライドします。

インクルードをコメントアウトしbuttons.lessて自分で定義するか、自分のプロジェクトにより適した別のボタンライブラリを見つけることをお勧めします。恥知らずなプラグイン:ButtonsライブラリとTB:Twitter BootstrapでのButtonsの使用を簡単に組み合わせることができる例を次に示します。実際には、ここでも、buttons.lessインクルードを完全に削除してパフォーマンスを向上させることをお勧めしますが、これは、物事を少し「一般的」に見せないようにする方法を示しています。私はまだこの演習を行っていませんが、次のような行をコメントアウトするだけで開始できると思います。

https://github.com/twbs/bootstrap/blob/master/less/bootstrap.less#L17

次に、独自のボタンモジュールの1つを使用して、 `lesscを使用して再コンパイルします。このようにして、TBのテスト済みコアを取得できますが、主要なオーバーライドに頼ることなく、物事をカスタマイズできます。Bootstrapのようなライブラリの一部のみを使用しない理由はまったくありません。もちろん同じことがTBのSassバージョンにも当てはまります


0

Bootstrap(少なくともバージョン3.1.1)およびLESSの場合、これを使用できます。

.btn-my-custom {
    .button-variant(@color; @background; @border)
}

これはで定義されていbootstrap/less/buttons.lessます。


0

background-colorを変更して!importantを使用できます。

.btn-primary {
  background-color: #003c79 !important;
  border-color: #15548b !important;
  color: #fff;
}

.btn-primary:hover {
  background-color: #4289c6 !important;
  border-color: #3877ae !important;
  color: #fff;
}

.btn-primary.focus, .btn-primary:focus {
   background-color: #4289c6 !important;
   border-color: #3877ae !important;
   color: #fff;
}

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.