//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を多用すると逆にパフォーマンスの低下を招きます。

//will-change属性
//position: fixed要素で重い動作を軽くするらしい・・・
.target { transition: transform 1s, opacity 1s;
        will-change: transform, opacity; }

iphone解像度
端末
画面サイズ
画面解像度
アスペクト比
iPod touch(第7世代)
iPhone SE
Retina HDディスプレイ
4″
デバイスピクセル 1,136 x 640
CSSピクセル 568 x 320
16:9
iPhone 6s
iPhone 7
iPhone 8
Retina HDディスプレイ
4.7″
デバイスピクセル 1,334 x 750
CSSピクセル 667 x 375
16:9
iPhone 6s Plus
iPhone 7 Plus
iPhone 8 Plus
Retina HDディスプレイ
5.5″
デバイスピクセル 1,920 x 1,080
CSSピクセル 736 x 414
16:9
iPhone X
iPhone XS
Super Retina HDディスプレイ
iPhone 11 Pro
Super Retina XDRディスプレイ
5.8″
デバイスピクセル 2,436 x 1,125
CSSピクセル 812 x 375
19:9
iPhone XR
iPhone 11
Liquid Retina HD ディスプレイ
6.1″
デバイスピクセル 1,792 x 828
CSSピクセル 896 x 414
19:9
iPhone XS Max
Super Retina HDディスプレイ
iPhone 11 Pro Max
Super Retina XDRディスプレイ
6.5″
デバイスピクセル 2,688 x 1,242
CSSピクセル 896 x 414
19:9
ipad解像度
端末
画面サイズ
画面解像度
アスペクト比
iPad Air(第4世代) new!
Liquid Retinaディスプレイ
True Tone
10.9″
デバイスピクセル 2,360 x 1,640
CSSピクセル 1,180 x 820
4:3
iPad(第8世代) new!
Retinaディスプレイ
10.2″
デバイスピクセル 2,160 x 1,620
CSSピクセル 1,080 x 810
4:3
iPad mini(第5世代)
Retinaディスプレイ
True Tone
7.9″
デバイスピクセル 2,048 x 1,536
CSSピクセル 1,024 x 768
4:3
iPad Pro 11
Liquid Retinaディスプレイ
ProMotionテクノロジー
True Tone
11″
デバイスピクセル 2,388 x 1,668
CSSピクセル 1,194 x 834
4:3
iPad Pro 12.9
Liquid Retinaディスプレイ
ProMotionテクノロジー
True Tone
12.9″
デバイスピクセル 2,732 x 2,048
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