skillup

技術ブログ

デザイン

実務でCSSを書く時のポイントについて

投稿日:2017年11月8日 更新日:

先月にかなりたくさんCSSを書いたんでその時感じたポイントみたいなものを。

いきなりかかずにまず共通部分をみつける

まあ、以前のまとめにも書いたんですが、あまり深く考えずにだーっと書いてしまうと、あとで手直しや出戻りがかなり多発します。

プログラムと同じように共通化する部分をまず見つけて、あとは呼び出すだけにしたほうがよさげ。

以前この記事で書いたんですけどね・・実務で納期が短くて焦ると忘れがち。

見た目の調整には紙に印刷して横においておく

モニタを占有するものが1つなくなるだけでだいぶ作業効率が変わります。またいちいちモニタで確認しないといけないとなると大変です。印刷しておけば他のウィンドウを起動せずにすぐに確認できます。

色や幅、フォントサイズ、頻出処理など共通化できるものは別管理する

プログラムでいうと定数や環境変数をまず設定ファイルで管理する考え方に近いです。また頻出処理に関してもまとめておきましょう。

こうするとページごとに見た目が違う・・ということを防げます。

できるだけクラスに対してCSSをつける

これも以前の記事で書いてましたが、焦るとhtml要素に書くことが多いんですよね。めんどいので。そうするとグローバルスコープになってしまって意図していないところに影響がでてしまうことが多いです。

idだと別の部分で使おうと思ったときに使えないです。

わかっていたけどいざ苦しまないと実感しないですね。

できるだけCSSをわける

これはあるHTMLに付与したい属性があったとして、1つのCSSで書くのではなく、共通化できそうなところやグループが違いそうなものはできるだけ分けたほうがよいということです。

無理やりわける必要はありませんが、だいたい複数の属性を付ける場合、複数のCSSに分けたほうが楽になります。

そのほうが保守性が向上しますし、あとあと変更が楽です。

1つのCSSの記述をなるべく減らす

これは新たな発見かも。複数の性質を付けたい場合はなるべく1つのcssを小さくして、1つのhtmlに対して複数のCSSを付けるようにすると、変更が楽です。

1つのCSSが巨大だと打消しが増えたり、融通が利かないことが非常に多いです。

1つのCSSはネストを深くしない

これも以前書いてましたが、3~4以上のネストされたCSSになると単純にみにくくなったり、他の部分でわからなくなることが頻発します。なるべく1つのクラスで済むようにしましょう。

見た目と構造はなるべくわける

ボタンとかは決まった構造のものがあると思いますが、色とかは当然バラバラかと思いますので、分けましょう。

幅は固定でいくのか、%でいくのか

スマホなら細かいところ以外はほぼ%で決定です。PCは幅固定のものがやはり多いでしょう。

頻出のCSSのパターンについて理解しておく

実際のCSS自体の理解に関してよくでるもの&個人的に理解が薄いとおもったものを。

  • displayの扱い。block,inline,inline-block,table(-cell)
  • 中央ぞろえ(左右と上下ともに)
  • 画像の扱い方(基本的にサイズが可変なものが多いので注意。比率は固定なのか、それとも領域いっぱいとるのか。どのように伸縮させるか。またbackgroundでの扱いなどcontainやcoverの違いなど)
  • ワンポイント画像(※リンク内でアクセント的につけるものや文字のすぐ後にくるもの)の使い方
  • 疑似要素:afterや:beforeの使い方に関して

個人的にはやりこめばやりこむほどプログラムとほぼ一緒だなと思いました。プログラマにはなれればやりやすいと思います。

 

-デザイン
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

bulmaフレームワークに関して

以前から使っているbulmaフレームワークですが、ドキュメントをフルで読んだことがなく、いい機会なので全て読み、ポイントをメモります。 https://bulma.io/documentation/ …

no image

cakePHP+bootstrapでのページャー

cakePHP+bootstrapでページャーのリンクを下記のように出力したいときのメモを。 ソース コントローラーのほうでは特に設定する必要なはく、HTMLのほうで下記のように設定すればOKです。 …

no image

bulmaフレームワークに関して form編

前回に続き、bulmaフレームワークのCSSのformがらみに関して。 ソースはこちら メモ的に。 controlはinput,select,textareaなどをwrappingする要素。通常だとあ …

no image

laravel Mix

Contents1 laravel Mix2 インストール laravel Mix 実務でlessを使っていて便利なのですが、コンパイルをatomのプラグインで行っていました。 ※保存されると自動的に …

no image

レイアウトカラム落ち対策

自分のPCでは大丈夫なんだけど、別PCで見るとカラム落ちするケースがあり、ちょっと対策を。 もちろん幅調節とかそういうのはなし。 Contents1 flex-wrap:nowrap2 display …

アーカイブ