css note
//HTML命名規則(html5より前)
id、class名
半角英数、-(ハイフン)、_(アンダースコア)
大文字、小文字は区別される
先頭は英字からはじめる。数字から始めてはだめ
//ハイフン記法
#nja-ok {
//スネーク記法
#nja_ok {
//キャメル記法
#njaOk {
//現在
HTML5では id の属性値に使える文字に制限は無い。
先頭が英字じゃなくても平気だし、記号も全角文字も絵文字もなんでも使える。
javascriptでもOKみたい
要チェック
-> 2021に伸びる3つのプロパティ(backdrop-filter/scroll-snap/aspect-ratio)
-> all, initial, unsetでCSSのリセット、継承回避
//垂直水平中央
//垂直水平中央
.outer{ position: relative; }
.inner { position: absolute; top: 50%; left: 50%;
transform: translateY(-50%) translateX(-50%);
}
//前方一致
[class^="nja-"], [class*=" nja-"]
部分一致
[class*="hoge"]
//後方一致
[class$="-hoge"], [class*="-hoge "]
解像度
//デフォルトはスマホ優先::将来画面サイズを考えんときに変わるかも
0px 〜 414px
@media (min-width: 415px) {/*415px 〜 959px*/}
@media (min-width: 960px) {/*960px 〜*/}
タテorヨコ
/* タテ長の場合 スマホやタブレット*/
@media screen and (orientation: portrait) {
}
/* 横長の場合 主にPC利用を想定!*/
@media screen and (orientation: landscape) {
}
リンクの先読み
//実用的ではなさそう、jsonは失敗する?
//スマホで拡大・縮小できない指定
//Google推奨の指定
ブラウザは事前にアニメーションの準備を行い、その要素がアニメーションを行うのに最適な状態にします。ただし、will-changeを多用すると逆にパフォーマンスの低下を招きます。
//will-change属性
//position: fixed要素で重い動作を軽くするらしい・・・
.target { transition: transform 1s, opacity 1s;
will-change: transform, opacity; }
iphone解像度
端末
画面サイズ
画面解像度
アスペクト比
iPod touch(第7世代)
iPhone SE
Retina HDディスプレイ
iPhone SE
Retina HDディスプレイ
4″
デバイスピクセル 1,136 x 640
CSSピクセル 568 x 320
CSSピクセル 568 x 320
16:9
iPhone 6s
iPhone 7
iPhone 8
Retina HDディスプレイ
iPhone 7
iPhone 8
Retina HDディスプレイ
4.7″
デバイスピクセル 1,334 x 750
CSSピクセル 667 x 375
CSSピクセル 667 x 375
16:9
iPhone 6s Plus
iPhone 7 Plus
iPhone 8 Plus
Retina HDディスプレイ
iPhone 7 Plus
iPhone 8 Plus
Retina HDディスプレイ
5.5″
デバイスピクセル 1,920 x 1,080
CSSピクセル 736 x 414
CSSピクセル 736 x 414
16:9
iPhone X
iPhone XS
Super Retina HDディスプレイ
iPhone 11 Pro
Super Retina XDRディスプレイ
iPhone XS
Super Retina HDディスプレイ
iPhone 11 Pro
Super Retina XDRディスプレイ
5.8″
デバイスピクセル 2,436 x 1,125
CSSピクセル 812 x 375
CSSピクセル 812 x 375
19:9
iPhone XR
iPhone 11
Liquid Retina HD ディスプレイ
iPhone 11
Liquid Retina HD ディスプレイ
6.1″
デバイスピクセル 1,792 x 828
CSSピクセル 896 x 414
CSSピクセル 896 x 414
19:9
iPhone XS Max
Super Retina HDディスプレイ
iPhone 11 Pro Max
Super Retina XDRディスプレイ
Super Retina HDディスプレイ
iPhone 11 Pro Max
Super Retina XDRディスプレイ
6.5″
デバイスピクセル 2,688 x 1,242
CSSピクセル 896 x 414
CSSピクセル 896 x 414
19:9
ipad解像度
端末
画面サイズ
画面解像度
アスペクト比
iPad Air(第4世代) new!
Liquid Retinaディスプレイ
True Tone
Liquid Retinaディスプレイ
True Tone
10.9″
デバイスピクセル 2,360 x 1,640
CSSピクセル 1,180 x 820
CSSピクセル 1,180 x 820
4:3
iPad(第8世代) new!
Retinaディスプレイ
Retinaディスプレイ
10.2″
デバイスピクセル 2,160 x 1,620
CSSピクセル 1,080 x 810
CSSピクセル 1,080 x 810
4:3
iPad mini(第5世代)
Retinaディスプレイ
True Tone
Retinaディスプレイ
True Tone
7.9″
デバイスピクセル 2,048 x 1,536
CSSピクセル 1,024 x 768
CSSピクセル 1,024 x 768
4:3
iPad Pro 11
Liquid Retinaディスプレイ
ProMotionテクノロジー
True Tone
Liquid Retinaディスプレイ
ProMotionテクノロジー
True Tone
11″
デバイスピクセル 2,388 x 1,668
CSSピクセル 1,194 x 834
CSSピクセル 1,194 x 834
4:3
iPad Pro 12.9
Liquid Retinaディスプレイ
ProMotionテクノロジー
True Tone
Liquid Retinaディスプレイ
ProMotionテクノロジー
True Tone
12.9″
デバイスピクセル 2,732 x 2,048
CSSピクセル 1,366 x 1,024
CSSピクセル 1,366 x 1,024
4:3
メモ
//ページ読み込み時のレイアウト崩れを修正する方法。
//bodyが読み込まれる前に、調整用のCSSをヘッダーに直書きする。
//または、要素に style=""で、直書きする。
//外部ファイルだと読込処理があるので、遅延が起こるので崩れを回避できない。
//画像ファイルは極力,lazyにしておく。スクリプトをいれておくこと。
//
でおけ。
//クリック・タッチを無効にする。
.notoch {
pointer-events: none;
}
//直書き
style="pointer-events: none;"
//注意点
・z-indexで指定した前面レイヤーに pointer-events: none;を指定すると逆に透けるので、後方の要素がクリックできてしまう。overlay要素には基本指定しない。
・キーイベントは無効にならない。tab移動、エンターキーは有効。
・IE10以下には効かない。
・右クリック・ドラッグも無効になる。
//有効化
pointer-events: auto !important;
//無効化サイトで臨時で有効にするときは・・
*, div {
pointer-events: auto !important;
}
//電話 国外対応
090-0000-0000
//PCでリンク無効
@media(min-width: 768px){
a[href^="tel:"]{
pointer-events: none;
}
}
//同様のことをjavascriptで
var ua = navigator.userAgent.toLowerCase();
var isMobile = /iphone/.test(ua)||/android(.+)?mobile/.test(ua);
if (!isMobile) {
$('a[href^="tel:"]').on('click', function(e) {
e.preventDefault();
});
}
// SMS
// iOSの場合
SMSで送信する
// Andoroidの場合
SMSで送信する
//flexbox
justify-content: flex-end; //rightは、効かない
flex-start
flex-end