初めて知った時感動したCSSとか小技とか

  • このエントリーをはてなブックマークに追加

こんにちは。8bitの森島です。

昼間は暑かったり夜は暑かったり気温差に慣れませんが皆様いかがお過ごしでしょうか。
最近の私はミスタードーナツの焼きドにおおハマりして、ちょっとこれは…肉…つく…

さて、今日から6月ですね。
弊社にも春から新卒の子が一人いたりして、初々しいなぁといつも微笑ましく見守ってます。
そういえば、私も昔これ同じミスしたなーとか思い出すことが多々あったりして、何だか懐かしくなってしまったのでちょっとコーダー見習いさんたちに向けて発信しようと思います。

初めて知った時感動したCSSとか小技とか

学生時代私は、やはりデザインの方を重点的に勉強していたので、コーディングに関しては手が遅かったりと粗末な部分がたくさんありました。
今となっては基本的なことなんですけどね。あの時しっておけばーと思ったことをメモしようと思います。



【CSSはまとめて記述できる】
例えば「margin」
margin-top:15px;
margin-right:15px;
margin-left:15px;
margin-bottom:15px;
こんな記述してませんか?
marginは、こんな風にまとめられます。
margin:10px 0 20px 0;
それぞれ、margin:上 右 下 左;の順でまとめられます。margin:0 15px;など数値が二つの場合は、margin:上下 左右;になります
その他にもbackroundやborderなど様々なCSSに使えます。
background:url(images/01.jpg) no-repeat left top;
boder:#000000 solid 1px;
いちいちbackground-positionとかbackground-colorなどたくさん行を使って記述していく必要がありません。

=======================================

【marginの値、autoの存在】
学生時代私はサイト全体を中央ぞろえにするのに、positionをかけて、さらにleftで横幅半分の値を-○○pxと指定をかけて…とやっていました
もちろんテクとしてはアリですが、手間などを考えるとこっちをマスターしておきたい。
margin:0 auto;
この「auto」がミソ。中央ぞろえがこのひとつだけで済むんですよね。autoに設定しておくとブロック要素であれば、勝手に中央ぞろえになるように余白をとってくれる。便利ですね。
※widthが指定されていないと時々上手くいかなかったりします。

=======================================

【「:hover」の存在】
aタグの、マウスオーバーの時の指定はどうしてますか?
a{ color:#000000; }
これはよく見慣れた指定だと思うのですが、これに一行プラスして、
a{ color:#000000; }
a:hover{ color:#FF0000; }
なんと「:hover」をつけるだけで、マウスが乗った時のCSSが変更出来るんですね。これを応用すれば背景を変更して画像の変更ができたり、下線の表示非表示を変えられたり、夢広がります。
これの他にも「:visited」(訪問済のリンク)や「:active」(クリック中のリンク)などもあります。便利便利。

=======================================

【「max-width」「max-height」の存在
なんとこやつら、幅の最大値と最小幅を指定できる便利なヤツらなんです。これを使えば、
p{
width:80%;
max-width:500px;
}
大きさを可変にしたいけどレイアウト崩れを防止したい時なんかに使えます。便利便利。
アフィリティエイトの画像を差し込む時何かに便利ですね。

=======================================

【CSSで透明度指定できる】
最近はこんなこともできちゃうんですねー。
p{
opacity: 0.9;
}
と記述しておけば、pタグが透明度90%になります。すごーいCSSすごーい。
実はまだ正式実装では無かったりとちょこちょこ事情はありますが、最近のブラウザなら問題ないと思います。

=======================================

【「,」で区切れば同じプロパティを使える】
例えば、こんな書き方
div#newsArea,
div#contentsWrapper
{
border:#000000 solid 1px;
}
プロパティの記述の前がミソですね。div#newsAreaとdiv#contentsWrapperの間に、「,」があります。
カンマでつなぐだけ。これで両方のdivにborderを付けることができます。カンマでちゃんと区切っていれば何個でも繋げられます。

=======================================

【同じ数字の続く色指定は省略できる】
「#FFFFFF」白、「#000000」黒、これって実は3つに省略できるんですよね。便利便利。
「#FFFFFF ⇒ #FFF」「#000000 ⇒ #000」「#CCCCCC ⇒ #CCC」

=======================================

【要素にマウスが乗った時のカーソルを指定できる】
昨今のWEB業界では必須のjavascriptなんかを使うときにとっても便利です。アコーディオンにしてみたはいいけどaタグで囲まないと指カーソルにならない、そんな風に思っていた時代もありました。
p{
 cursor:pointer;
}
これをつけるだけで解決。pタグの上にマウスが乗ると、指カーソルになってくれます。aタグの中に長々とjavascriptを仕込む必要なし!便利便利。
他にもヘルプカーソルにできたり矢印カーソルにできたりと、色々選べます。

=======================================

【id名はclass名の頭に数字を使ってはいけない】
これも大事なことですね、意外と知らない人がいたりするので書いておきます。
×「div id=”01tab”」
○「div id=”tab01″」
じつはこれ、上の方はやってはいけないid名の付け方なんです。ブラウザによってCSSが反映されなかったり、バグの原因になりますので、要注意。
私も一度これで痛い目みたことがあり、それ以来名前の先頭の文字は必ずアルファベットにするようにしています。

=======================================

さて、なんだか懐かしい気分になりましたが、いかがでしたでしょうか。
少しでも初心者の方の手助けになれば幸いです。
間違っている所なんかあればしてきしてくだされば助かります。
よければ皆さんも、自分はこういうの驚いたよーなんてことがあればぜひ教えてください!

執筆者:森島[ WEBデザイナー ]

8bit デザイナーです。 デザイン・マークアップ・映像制作など幅広く担当しています。

関連記事

プログラミング

【phpdotenv】PHPで環境変数を取り扱うお話

PHPでサーバーの環境ごとに設定ファイルを用意する場合、config.phpなどのファイルにデータベースの接続情報やAPIのキーなどをdefineで登録すると思います。 これは昔からある一般的なやり方ですが、例えば「ローカル環境やテスト環境と本番環境で情報を出し分けたい」「GitHubやSubversionなどに接続情報を管理されたくない」ということがあるかと思います。 Linuxの場合は「.env」でユーザーごとの情報をあらかじめ設定することが可能ですが、PHPだとデフォル […]

Webサービス

【CAPTCHA系】reCAPTCHAの代替サービスを紹介するお話

みなさん、reCAPTCHAを使ってますか? CAPTCHAと呼ばれる機能は問い合わせフォームやログインフォームなどいわゆるbot系対策として有効で、その中でもreCAPTCHAは無料かつ簡単に導入できるたため、様々な場所で使われてます。 目次1 2024年4月から実質有料化?2 他にないのだろうか?3 アカウントを作る4 PHPでの実装5 最後に 2024年4月から実質有料化? しかし、2024年4月から今まで100万リクエストまで無料だったのが、1アカウント合計1万リクエ […]

Webサイト制作

Webアクセシビリティの基本を学ぼう!

近年Webサイト制作時に求められる『Webアクセシビリティ』。 正直なんだかよくわからない、ややこしそうだなあと思う方も多いと思います。 自分も勉強中ではありますが、今回は対応しやすそうな内容をなるべくわかりやすくまとめてみました。 一緒にWebアクセシビリティについて学んでいきましょう。 目次1 そもそもWebアクセシビリティってなに?2 基本的な対応内容2.1 色のコントラストをはっきりさせよう2.2 文字サイズを変更できるようにしよう2.3 できるだけテキストベースを心 […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。