Saya menemukan contoh ini di stackoverflow:
Gambar Lingkaran menggunakan css saja
Bagus sekali. Tapi saya ingin tahu cara memodifikasi contoh itu sehingga saya bisa memasukkan teks di tengah-tengah lingkaran?
Saya juga menemukan ini: Teks berpusat vertikal dan horizontal di dalam lingkaran di CSS (seperti lencana pemberitahuan iphone)
tetapi untuk beberapa alasan, itu tidak berfungsi untuk saya. Ketika saya membuat kode tes berikut:
<div class="badge">1</div>
alih-alih lingkaran, saya mendapatkan bentuk oval. Saya mencoba bermain-main dengan kode untuk melihat bagaimana saya bisa membuatnya bekerja.
css
css-shapes
dot
sumber
sumber
border-radius:50%;
menjadikan acara kode Anda lebih elegan dan portabel, tanpa harus mengubah atribut ini setiap kali berdasarkan lebar dan tinggi;)Jika konten Anda akan dibungkus dan tingginya tidak diketahui, ini taruhan terbaik Anda:
http://cssdeck.com/labs/aplvrmue
Tampilkan cuplikan kode
sumber
display: absolute
melanggar perubahan - tetapi solusi mudah adalah membungkusnya dengan div lain.Anda dapat menggunakan css3
flexbox
.HTML:
CSS:
Ini akan memungkinkan Anda untuk memiliki baris tunggal dan multi-baris teks rata garis tengah dan vertikal.
Tampilkan cuplikan kode
sumber
Saya pikir Anda ingin menulis teks dalam bentuk oval atau lingkaran? kenapa tidak yang ini?
sumber
Untuk desain web saya baru-baru ini diberi saya harus menyelesaikan jumlah teks terpusat dan tidak diketahui dalam masalah lingkaran tetap dan saya pikir saya akan berbagi solusi di sini untuk orang lain yang mencari ke dalam combo lingkaran / teks.
Masalah utama yang saya miliki adalah teks akan sering melanggar batas-batas lingkaran. Untuk mengatasi ini saya akhirnya menggunakan 4 divs. Satu kontainer persegi panjang yang menentukan batas maksimal lingkaran (tetap). Di dalamnya akan menjadi div yang menggambar lingkaran dengan lebar dan tinggi diatur ke 100% sehingga mengubah ukuran induk mengubah ukuran lingkaran yang sebenarnya. Di dalamnya akan ada div persegi panjang lain yang, menggunakan% 's, akan membuat area batas teks mencegah teks meninggalkan lingkaran (untuk sebagian besar) Kemudian akhirnya div sebenarnya untuk teks dan pemusatan vertikal.
Lebih masuk akal sebagai kode:
Anda dapat menghapus tanda komentar warna perbatasan pada div wadah untuk melihat bagaimana batasannya.
Hal-hal yang harus diperhatikan: Anda masih dapat menembus batas-batas lingkaran jika Anda memasukkan terlalu banyak teks atau menggunakan kata-kata / teks yang tidak terputus yang terlalu panjang. Ini masih tidak cocok untuk teks yang sama sekali tidak dikenal (seperti input pengguna) tetapi bekerja paling baik ketika Anda tahu sedikit apa jumlah teks terbesar yang Anda butuhkan untuk menyimpan dan mengatur ukuran lingkaran dan ukuran font sesuai. Anda dapat mengatur div wadah teks untuk menyembunyikan luapan apa pun tentu saja, tetapi itu mungkin terlihat "rusak" dan tidak ada pengganti untuk benar-benar memperhitungkan ukuran maksimal dengan benar dalam desain Anda.
Semoga ini bermanfaat bagi seseorang! HTML / CSS bukan disiplin utama saya jadi saya yakin ini bisa diperbaiki!
sumber
Gambar lingkaran dengan teks di tengah dengan Tag HTML dan tanpa CSS
sumber
font-size
,font-family
,x
, dany
berbaris. Untuk siapa pun yang tidak memiliki Verdana diinstal itu tidak akan terpusat. Menggunakanx="50%" y="50%" dominant-baseline="middle" text-anchor="middle"
juga tidak menyelesaikan masalah.Jika hanya satu baris teks, Anda bisa menggunakan properti tinggi-baris, dengan nilai yang sama dengan tinggi elemen:
Jika teks memiliki beberapa baris, atau jika kontennya variabel, Anda bisa menggunakan padding-top:
Contoh: http://jsfiddle.net/2GUFL/
sumber
Tentu saja, Anda harus menggunakan tag untuk melakukannya. Satu untuk membuat lingkaran dan lainnya untuk teks.
Di sini beberapa kode dapat membantu Anda
Contoh langsung di sini http://jsbin.com/apumik/1/edit
Memperbarui
Di sini lebih kecil dengan beberapa perubahan
http://jsbin.com/apumik/3/edit
sumber
Bagi saya, hanya solusi ini yang berfungsi untuk teks multiline:
sumber
Jika Anda menggunakan kerangka Yayasan 5 dan Kompas, Anda dapat mencoba ini.
input .sass
Output .css
sumber
Dapatkan ini dari halaman YouTube yang memiliki pengaturan yang sangat sederhana. Benar-benar dipelihara dan digunakan kembali.
sumber
Beberapa solusi di sini tidak bekerja dengan baik untuk saya di lingkaran kecil. Jadi saya membuat solusi ini menggunakan posisi absolut.
Menggunakan SASS akan terlihat seperti ini:
Dan bisa digunakan suka
Lihat demo di https://codepen.io/matheusrufca/project/editor/DnYPMK
Lihat cuplikan untuk melihat CSS keluaran
Tampilkan cuplikan kode
sumber
Salah satu cara untuk melakukannya adalah dengan menggunakan flexbox untuk menyelaraskan teks di tengah. Cara saya ditemukan untuk melakukannya, adalah sebagai berikut:
HTML:
CSS:
Di sini plnkr: https://plnkr.co/edit/EvWYLNfTb1B7igoc3TZx?p=preview
sumber
Menggunakan kode ini akan responsif juga.
sumber
sumber
Saya menggabungkan beberapa jawaban dari orang lain dan dengan
float
danrelative
itu memberi saya hasil yang saya butuhkan.Dalam HTML saya menggunakan div. Saya menggunakannya di dalam
li
untuk bilah navigasi.sumber