レスポンシブデザインっぽくしてみた
現在使用中のNibbleblogの初期テーマのCSSだけを編集して、モバイルフレンドリーなレスポンシブデザインっぽくしてみた
2016-05-04 | Nibbleblog
Bootstrapテーマなんて使わずに対応
レスポンシブデザインなんて知るかコノヤローと思っていたが、モバイルフレンドリーなウェブデザインがSEO的に良いらしく、最近レスポンシブデザインが増えてきている。一方、Nibbleblogの初期テーマの一つであるGoogleSimpleを現在利用しているが、このテーマはレスポンシブデザインに完全には対応していない。しかし、今更このテーマからBootstrapテーマ系のテーマへ変更するつもりはない。かと言って、このテーマをゴリゴリに弄るのは面倒。そこで、このテーマのCSSだけ弄って、なんちゃってレスポンシブデザインにしてみた。
コードの修正内容
元の/themes/google_simple/css/main.cssは以下のとおりで、CSSでサイドバーを右に回り込ませている。
/*
========================================================================
BLOG :: Main
========================================================================
*/
#main {
margin: 0 auto;
overflow: auto;
}
#left {
font-size: 1.32em;
margin-right: 260px;
}
#sidebar {
float: right;
margin-right: 10px;
width: 220px;
font-size: 1.2em;
}
これを、以下のとおり画面表示幅が800px以下になったとき、サイドバーが右に回り込まないようにするとともに、メインコンテンツの位置とサイドバーの位置関係をcolumn-reverseで上下反転させただけ。いわゆるブレークポイントを800pxにしたのは、所有しているドコモ dtab d-01Gの画面が800×1280ピクセルだったから。つまり、俺フレンドリーなウェブデザイン。
/*
========================================================================
BLOG :: Main
========================================================================
*/
#main {
margin: 0 auto;
overflow: auto;
}
#left {
font-size: 1.32em;
}
#sidebar {
font-size: 1.2em;
}
/* 画面表示幅が801px以上の場合の挙動 */
@media all and (min-width: 801px) {
#left {
margin-right: 260px;
}
#sidebar {
float: right;
margin-right: 10px;
width: 220px;
}
}
/* 画面表示幅が800px以下の場合の挙動 */
@media all and (max-width: 800px) {
#main {
display: flex;
flex-direction: column-reverse;
}
}
備考
「ヘッダーを画像に置換してみた」で加えたmin-widthプロパティは、あらかじめすべて削除したので念のため。

コメントはありません
コメント