Masalah:
Bagaimanakah kita boleh menggayakan hanya separuh daripada watak? Sebagai contoh, menjadikan separuh daripada huruf itu telus.
Percubaan Sebelumnya:
Contoh:
Penyelesaian:
GitHub Plugin:
https://github.com/arbel/half-style
Demo:
http://jsfiddle.net/arbel/pd9yB/1694/
Ciri:
Penyelesaian Asas:
Watak Tunggal:
Penyelesaian ini menggunakan CSS tulen dan kelas bernama .halfStyle.
Sebarang Teks:
Tambahkan kelas .textToHalfStyle pada elemen mengandungi teks.
Automasi JavaScript:
<code class="javascript">// jQuery for automated mode jQuery(function($) { var text, chars, $el, i, output; // Iterate over all class occurences $('.textToHalfStyle').each(function(idx, el) { $el = $(el); text = $el.text(); chars = text.split(''); // Set the screen-reader text $el.html('<span style="position: absolute !important;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);">' + text + '</span>'); // Reset output for appending output = ''; // Iterate over all chars in the text for (i = 0; i < chars.length; i++) { // Create a styled element for each character and append to container output += '<span aria-hidden="true" class="halfStyle" data-content="' + chars[i] + '">' + chars[i] + '</span>'; } // Write to DOM only once $el.append(output); }); });</code>
CSS:
<code class="css">.halfStyle { position: relative; display: inline-block; font-size: 80px; /* or any font size will work */ color: black; /* or transparent, any color */ overflow: hidden; white-space: pre; /* to preserve the spaces from collapsing */ } .halfStyle:before { display: block; z-index: 1; position: absolute; top: 0; left: 0; width: 50%; content: attr(data-content); /* dynamic content for the pseudo element */ overflow: hidden; color: #f00; }</code>
Contoh Penggunaan :
<code class="html"><script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <p>Single Characters:</p> <span class="halfStyle" data-content="X">X</span> <span class="halfStyle" data-content="Y">Y</span> <span class="halfStyle" data-content="Z">Z</span> <span class="halfStyle" data-content="A">A</span> <hr/> <p>Automated:</p> <span class="textToHalfStyle">Half-style, please.</span></code>
Atas ialah kandungan terperinci Bolehkah CSS Menggayakan Separuh daripada Watak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!