CSSはリモコンのボタンを模倣する

CSSはリモコンのボタンを模倣する

注: このデモはミニプログラム環境でテストされており、他の h5 および pc Web ページにも適用できます。ミニプログラムの単位とタグ名を汎用のものに変更し、必要に応じて調整するだけです。

基本的な考え方は、4 つの同一の正方形を T 字型のパターンでレイアウトし、回転属性と組み合わせて組み合わせることです。

HTML構造

<view class="button-group">
  <view class="outter-circle">
    <view class="inner-parts brown" bindtap="button" data-type="volAdd">
      <text class="rotate">+</text>
    </ビュー>
    <view class="inner-parts silver" bindtap="button" data-type="chaAdd">
      <text class="rotate">+</text>
    </ビュー>
    <view class="inner-parts blue" bindtap="button" data-type="chaDes">
      <text class="rotate">-</text>
    </ビュー>
    <view class="inner-parts gold" bindtap="button" data-type="volDes">
      <text class="rotate">-</text>
    </ビュー>

    <view class="inner-circle" bindtap="button" data-type="ok">
      <text class="ok rotate">OK</text>
    </ビュー>
  </ビュー>
</ビュー>

CSS スタイル

.ボタングループ{
  パディングトップ: 20rpx;
  幅: 300rpx;
  高さ: 300rpx;
  背景色: ピンク;
}
.外側の円 {
  位置: 相対的;
  左マージン: 10rpx;
  幅: 280rpx;
  高さ: 280rpx;
  背景色: ライトシアン;
  境界線の半径: 100%;
  オーバーフロー: 非表示;
  変換の原点: 中心;
  変換: 回転(45度);
}
.インナーパーツ{
  フロート: 左;
  幅: 140rpx;
  高さ: 140rpx;
  行の高さ: 140rpx;
  テキスト配置: 中央;
}
.シルバー{
  背景色: シルバー;
}
。金 {
  背景色: ゴールド;
}
。青 {
  背景色: 青;
}
。茶色 {
  背景色: 茶色;
}
.インナーサークル{
  位置: 絶対;
  上マージン: 70rpx;
  左マージン: 70rpx;
  幅: 140rpx;
  高さ: 140rpx;
  行の高さ: 140rpx;
  テキスト配置: 中央;
  境界線の半径: 100%;
  背景色: 水色;
}
.回転{
  表示: インラインブロック;
  変換: 回転(-45度);
}

注意: テキスト領域がインライン ブロックでない場合、回転プロパティは有効になりません。

ボタンクリックイベント

ボタン: 関数(e) {
    var ボタンタイプ = e.currentTarget.dataset.type
    console.log(ボタンタイプ)
    スイッチ (ボタンタイプ) {
      ケース 'chaAdd':
        console.log('チャンネルを後戻り')
      壊す
      ケース 'chaDes':
        console.log('チャンネルを転送する')
      壊す
      ケース 'volAdd':
        console.log('音量を強くする')
      壊す
      ケース 'volDes':
        console.log('音量を弱める')
      壊す
      デフォルト:
        コンソールログ('ok')
    }
  }

操作効果

要約する

上記は、編集者が紹介したCSS模倣リモコンボタンです。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残してください。編集者がすぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

<<:  HTML 5 ワーキングドラフトの謎を解く

>>:  VUE 入門 イベント処理の学習

推薦する

Vue3 リストインターフェースデータ表示の詳細

目次1. リストインターフェースの表示例2. データを表示する2.1. コンポーネントがリストに表示...

Ubuntu Linux に Git と GitHub をインストールして使用する

Git 入門Git は、Linux(R) カーネル開発の管理を支援するために 2005 年に Lin...

Nginx ポート競合を解決するトラブルシューティング方法の例

問題の説明データ転送に Nginx を使用し、フロントエンドとバックエンドが分離された Spring...

Linuxのファイル権限の詳細な紹介

Linux の優れた点は、マルチユーザー、マルチタスク システムにあります。 Linux では通常、...

MySQL 8.0.16 圧縮版のダウンロードと Win10 システムへのインストール チュートリアル

公式サイトからダウンロード: https://www.mysql.com MySQLの公式サイトにア...

Alibaba Cloud ECS サーバーでポート 8080 を開く方法

セキュリティ上の理由から、Alibaba Cloud Server ECS にはデフォルトで独自のセ...

ウェブフロントエンド開発の細部

1 選択タグは閉じられている必要があります <select></select>...

Docker クリーニングキラー/Docker オーバーレイ ファイルがディスク領域を大量に占有する

[インターネット上の移行ファイルをすべて見ると、信頼性が低く、症状のみを治療し、根本的な原因を治療し...

JavaScript インタビュー: 配列の平坦化メソッドを実装する方法

目次1 配列のフラット化とは何ですか? 2 JS標準ライブラリの配列フラット化メソッド3 フラットメ...

MySQL 5.7.20 の解凍バージョンをインストールするための詳細な手順 (2 つの方法)

Windows 64ビットでのMySQLのインストールについて説明します。5.7以降、MySQLの...

iframe の src を about:blank に設定した後の詳細

iframe の src を 'about:blank' に設定した後、"...

Vueは時間カウントダウン機能を実装する

この記事では、Vueの具体的なコード例を参考までに紹介します。具体的な内容は以下のとおりです。必要:...

ラジオボタンとチェックボックス効果の純粋な CSS 実装例

ラジオボタンとチェックボックスラジオボタンとチェックボックスの効果を実現するための純粋な CSSラジ...

Linux システムで Tomcat のポート 80 を使用する方法

アプリケーションシナリオ多くの場合、Linux サーバーに tomcat や nginx などのソフ...

シンプルな HTML ビデオ プレーヤーを実装する方法

この記事では、シンプルな HTML ビデオ プレーヤーを実装する方法を紹介し、皆さんと共有します。詳...