JSFiddle - React, Tailwind, and code Playground

HTML

<div>
<pre class="code"><div class="button">Выделить текст!</div>
<code>- Выпей еще чаю, - сказал Мартовский Заяц, наклоняясь к Алисе.</code></pre>

<pre class="code"><div class="button">Выделить текст!</div>
<code>- Еще? - переспросила Алиса с обидой. - Я пока ничего не пила.</code></pre>
</div>

<pre class="code"><div class="button" >Выделить текст!</div>
<code>- Ты, верно, хочешь сказать, что меньше чаю она не желает: гораздо легче выпить больше, а не меньше, чем ничего, - сказал Болванщик.</code></pre>
</div>

CSS

.button {
    float:right;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    padding:3px;
}

pre {
    border: 1px solid #dcdcdc;
    margin:50px;
    white-space: pre-wrap;
    padding-left:5px;
}

JavaScript

$(document).ready(function() {

    $('.button').live("click", function(){
        select_all($(this).next()[0])
   });


 });



function select_all(el) {
        if (typeof window.getSelection != "undefined" && typeof document.createRange != "undefined") {
            var range = document.createRange();
            range.selectNodeContents(el);
            var sel = window.getSelection();
            sel.removeAllRanges();
            sel.addRange(range);
        } else if (typeof document.selection != "undefined" && typeof document.body.createTextRange != "undefined") {
            var textRange = document.body.createTextRange();
            textRange.moveToElementText(el);
            textRange.select();
        }
    }