作成日:2020-08-13, 更新日:2020-08-13
基本
できる限り状況を選ばない内容にしたい
※JSが絡む、設定されている各値をクリアしなくちゃいけない・・・等
方針
・無効用のCSSを別途用意する
・「!important」で強制上書き
・「pointer-events: none;」でクリック無効
・無効用に色を指定(※元のボタンの色を薄くする・・・そんな設定は面倒だからイヤだ)
pointer-events:none;
クリックイベントが無効になるっぽく、JSの制御が不要っぽい。
※念のためにボタンに「disabled="disabled"」をつけといたほうが無難。
必要な内容
・対象ボタンにあわせたマウスカーソルの対応
・対象ボタンをクリックしたときの対応
記述例:白文字、グレーのボタン
.xxx { cursor: not-allowed !important; /** ←多分無くて大丈夫 **/ color: #fff !important; background-color: #ccc !important; border-color: #ccc !important; &:hover { cursor: not-allowed !important; color: #fff !important; background-color: #ccc !important; border-color: #ccc !important; } &:active { pointer-events: none; /** クリックの無効 **/ cursor: not-allowed !important; color: #fff !important; background-color: #ccc !important; border-color: #ccc !important; } }
sassの記述例
.xxx { @mixin _btn_disabled { cursor: not-allowed !important; color: #fff !important; background-color: #ccc !important; border-color: #ccc !important; } @include _btn_disabled; &:hover { @include _btn_disabled; } &:active { pointer-events: none; @include _btn_disabled; } }