Bootstrap 3のレスポンシブユーティリティには、画面の解像度に応じていくつかのブロックを非表示または表示できるCSSクラスがあります http://getbootstrap.com/css/#responsive-utilities-classes
CSSファイルに、画面解像度に基づいて適用したい、または適用したくないスタイルルールがあります。
どうすればいいですか?
すべてのCSSファイルを実稼働展開のファイルに最小化しますが、異なる画面解像度の個別のCSSファイルを持つ以外に解決策がない場合は、これを回避できます。
つかいます - @media
クエリ 。彼らはこの正確な目的を果たします。以下に、それらの仕組みの例を示します。
@media (max-width: 800px) {
/* CSS that should be displayed if width is equal to or less than 800px goes here */
}
これは、幅が800px以下のデバイスでのみ機能します。
Mozilla Developer Network でメディアクエリの詳細をご覧ください。
検出は自動です。各画面解像度に使用できるcssを指定する必要があります。
/* for all screens, use 14px font size */
body {
font-size: 14px;
}
/* responsive, form small screens, use 13px font size */
@media (max-width: 479px) {
body {
font-size: 13px;
}
}
メディアクエリを使用したり、bootstrap css:
https://github.com/Heras/Responsive-Breakpoints
クラスresponsive-breakpoints
を任意の要素に追加するだけで、自動的にxs sm md lg xl
クラスがそれらの要素に追加されます。
@ media-queriesを使用しないのはなぜですか?これらは、まさにその目的のために設計されています。 jQueryを使用してこれを行うこともできますが、それは私の本の最後の手段です。
var s = document.createElement("script");
//Check if viewport is smaller than 768 pixels
if(window.innerWidth < 768) {
s.type = "text/javascript";
s.src = "http://www.example.com/public/assets/css1";
}else { //Else we have a larger screen
s.type = "text/javascript";
s.src = "http://www.example.com/public/assets/css2";
}
$(function(){
$("head").append(s); //Inject stylesheet
})
@mediaクエリはこの目的に役立ちます。以下に例を示します。
@media only screen and (max-width: 991px) and (min-width: 769px){
/* CSS that should be displayed if width is equal to or less than 991px and larger
than 768px goes here */
}
@media only screen and (max-width: 991px){
/* CSS that should be displayed if width is equal to or less than 991px goes here */
}