Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2025
21
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 2.70 KB | Source Code | 0 0
  1. <html>
  2.   <head>
  3.     <style>
  4.       html {
  5.         font-size: 2rem;
  6.       }
  7.       input, textarea, button {
  8.         font-family: inherit;
  9.       }
  10.       input, textarea {
  11.         width: 100%;
  12.       }
  13.       [type=text], button {
  14.         font-size: inherit;
  15.         height: 3rem;
  16.         margin: 1.5rem 0;
  17.       }
  18.       [type=range] {
  19.         appearance: none;
  20.         background-color: #bbb;
  21.         height: 1rem;
  22.        
  23.         &::-webkit-slider-thumb {
  24.          appearance: none;
  25.           height: 2rem;
  26.           width: 2rem;
  27.           background-color: white;
  28.           border: 1px solid #333;
  29.           border-radius: 50%;
  30.         }
  31.       }
  32.       textarea {
  33.         font-size: 32px;
  34.       }
  35.     </style>
  36.   </head>
  37.   <body>
  38.     <input type="text" id="inputText" placeholder="Enter your text...">
  39.     <div>
  40.       <input type="range" id="fontSizeSlider" min="8" max="200" value="32">
  41.       <label for="fontSizeSlider" id="fontSizeLabel">32px</label>
  42.       <button id="copyText" disabled>Copy Text</button>
  43.       <button id="clearText">Clear</button>
  44.     </div>
  45.     <textarea id="outputText" rows="10" cols="50" placeholder="Generated text will appear here..." readonly></textarea>
  46.  
  47.     <script>
  48.       const inputText = document.getElementById('inputText');
  49.       const slider = document.getElementById('fontSizeSlider');
  50.       const fontSizeLabel = document.getElementById('fontSizeLabel');
  51.       const copyText = document.getElementById('copyText')
  52.       const outputText = document.getElementById('outputText');
  53.       const defaultFontSize = 32;
  54.    
  55.       // Generate text based on user input and slider change
  56.       function generateText() {
  57.         fontSizeLabel.textContent = slider.value + 'px';
  58.         outputText.style.fontSize = slider.value + 'px';
  59.         outputText.value = inputText.value;
  60.         copyText.disabled = inputText.value.length === 0;
  61.       }
  62.  
  63.       // Event listeners for input and slider changes
  64.       document.querySelectorAll('#inputText, #fontSizeSlider').forEach(
  65.         input => {
  66.           input.addEventListener('input', generateText);
  67.         }
  68.       );
  69.  
  70.       // Copy generated text to clipboard
  71.       copyText.addEventListener('click', () => {
  72.         outputText.select();
  73.         document.execCommand('copy');
  74.       });
  75.  
  76.       // Clear input and output fields
  77.       document.getElementById('clearText').addEventListener('click', () => {
  78.         inputText.value = '';
  79.         outputText.value = '';
  80.         outputText.style.fontSize = defaultFontSize + 'px';
  81.         slider.value = defaultFontSize;
  82.         fontSizeLabel.textContent = defaultFontSize + 'px';
  83.         copyText.disabled = true;
  84.       });
  85.     </script>
  86.   </body>
  87. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement