質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

Q&A

解決済

2回答

3149閲覧

Bootstrapがデフォルトで用意しているクラス名の効果を別のクラス名にも適用する

hisataka

総合スコア19

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

0グッド

0クリップ

投稿2016/10/22 08:25

最近Bootstrap3からBootstrap4にバージョンアップしました。

問題は、Bootstrapがデフォルトで用意してくれているクラスの名前が変わった事です。

例えばlabelタグはBootstrap3では

<span class="label label-info">Info Label</span>

とすればlabelを装飾してくれますが、Bootstrap4では同じような装飾をするには

<span class="tag tag-default">Default</span>

となります。

いずれ全てBootstrap4のクラスに直したいとは思いますが、現在使っているツールがデフォルトで

class="tag tag-default"

の要素を作ってしまう状態で、Bootstrap4だと何も装飾されない状態になってしまいます。

この場合、HTMLでは

class="tag tag-default"

のまま

class="label label-info"

の効果をつける事はできるのでしょうか?よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

Bootstrap3→4では、かなり変更点があるので現段階ではBootstrap3のまま運用し、リニューアルなどのタイミングでBootstrap4に切り替え構築しなおすのがよいかと思います。
全体的ではグリッドが4つから5つに増えたりしてますので新しく増えた分のメディアクエリに対しての追加だったり修正の工数が相当かかるかと。

妙なバッティングなどが起きる可能性や煩雑になるので本当にオススメしませんが、Bootstrap3のCSSのあとにBootstrap4のCSSを読み込めば同じものは4に上書きされますし4にないものは3のCSSが適用されます。

あとご質問のですがclass="tag tag-default"ならばBootstrap4にあるのでスタイルはあたるはずですが…
おそらくCSSがBootstrap3のままなのかと思います。

逆に4にしていて.label.tagの効果をつけるというのであれば.tagのところすべてに.labelの分を追加していくしかないと思います。

投稿2016/10/22 09:19

gin

総合スコア2722

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

現在使っているツールがbootstarp3のclassしか吐けない時は、scssを使えるのであれば

scss

1.label { 2 @extend .tag; 3} 4 5.label-info { 6 @extend .tag-info; 7}

とすることで比較的簡単にbootstrap4の定義内容をbootstap3のクラス名で使えるようになります。

投稿2016/10/22 09:21

編集2016/10/22 16:26
hana-da

総合スコア1728

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WanOOOOOO

2016/10/22 18:14

横からすみません。これだけでspやhover等も対応できるのですか? 特にhoverやdisabled等状態変化のスタイルが沢山あるのでこれ1つで対応できるなら便利だから覚えておきたくて・・・ それともやはり対応させたいものの数だけ書くのでしょうか?
hisataka

2016/10/22 18:15

できました!@extendで継承的なことができるのですね。ありがとうございます!!
WanOOOOOO

2016/10/22 18:19

タイムリーに 全部まとめて大丈夫なんですね!覚えておきます!
gin

2016/10/22 19:05

補足しておきます。 さすがに全部っていうのはないです。 コンパイルすると、 ------- .tag, .label {} ------- こうなるという意味なので。 継承したいものがあればその分、書く感じになります。 今回は使用していて変更になったclassが少なくレスポンシブも崩れず大丈夫だったということだと思います。 それならこちらのほうが早いですね。 私の回答はガッツリ使ってるひとや業務用向けみたいなものなので…^^; あ、Sassやってたの2年以上前なので継承新しくなってたらごめんなさい。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問