プログラミング

【HTML/CSS】クリックするだけでテキストをコピーできるボタン【ワードプレス】

ブログを書いていて思ったのが。ボタンをクリックしたら、招待コードなどのテキストがコピーできたら便利だよな~ということ

スマホで文章の一部分をコピーするのは、なかなか難しいです。

ということで、本記事は、htmlやCSSなどを使って、クリックしたらテキストをコピーできるボタンを実装する方法を記載します。

▼こんな感じのです▼

このページをコピーする

このボタンをクリックして、貼り付けを行うと、このページのURLが出てくると思います。

この作業は、必ずバックアップを取ってからやってください

『テキストのコピーボタンを作る』をCSSに追加する

まず、ボタンを作るコードを作ります。

サルワカさんの記事のボタンを参考にさせてもらいました。あなた自身で好きな色や形に変更してみてください。

/* コピーボタン */
.copy_btn {
  width:80%!important;
  padding: 12px 0;
  margin-left: auto!important;
  margin-right: auto!important;
  color:#ffffff;
  font-weight:bold;
  background:#000000;
  border: solid 2px #000000;
  border-radius: 3px;
  transition: .4s;
  text-align: center;
}
 
.copy_btn:hover {
  background: #ffffff;
  color: #000000;
}
.copy_btn:hover {
	cursor: pointer;
}

[color:#ffffff]の部分が文字色で、[background:#000000]の部分が背景になります。

あなたの好きな色に変更してください。

《テキストのコピーボタンを作る》をBODYタグに追加する

下記を、


</BODY> タグの直前に埋め込んでください。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<!-- ↓クリップボード操作のために使用するjsを読み込む ( https://clipboardjs.com/ ) -->
<script src="https://cdn.jsdelivr.net/clipboard.js/1.5.13/clipboard.min.js"></script>
 
<script>
var clipboard = new Clipboard('.copy_btn');    //clipboard.min.jsが動作する要素をクラス名で指定
 
//クリックしたときの挙動
$(function(){
    $('.copy_btn').click(function(){
        $(this).addClass('copied');    //ボタンの色などを変更するためにクラスを追加
        $(this).text('コピーしました');    //テキストの書き換え
    });
});
</script>

スペースなどないように、慎重にコピペしてください

《テキストのコピーボタンを作る》をHTMLで書き出す

こちらのコードを、htmlに貼り付けてると、下記のボタンが反映されます!

<div class="copy_btn" data-clipboard-text="おはようございます">「おはようございます」をコピーする</div>

「おはようございます」をコピーする

CSS/HTML勉強におすすめの本

・「HTMLとCSSは少しなら分かる」という初心者〜中級者にオススメの本
・「実際にWebサイトをイチから作ってみよう」というコンセプト
・読みながら手を動かすという実習書的な要素が強い
・WEB制作の流れを掴むにはとても良い本。

HTML5&CSS3デザインブック (ステップバイステップ形式でマスターできる)