2016-03-29 27 views
1

Metni dikey olarak hizalamak için dy'u kullanma hakkında birkaç gönderi gördüm, ancak bunların tümü açıklamaksızın rastgele bir değer seçiyor. Şüphesiz bu değer yazı tipine göre değişebilir mi? Metnimin yazı tipi boyutu bir değişkende (fsize) saklanır ve değeri diğer faktörlere bağlı olarak değişebilir. .attr("dy", fsize/2)'u ayarlamayı denedim (tam olarak fsize bir dize ve ems olduğundan tam olarak değil, ancak noktayı aldınız) ve metnim merkezden uzak. fsize yazı tipi boyutu dikkate alındığında hangi değeri seçmeliyim?D3, metni dinamik olarak dikey olarak hizala

+0

bir örnek verebilir misiniz? JSFiddle belki – thatOneGuy

+0

@thisOneGuy Kodum bir keman için çok büyük, ama istersen sana bir resim verebilirim. – Bluefire

+0

Evet, bu belki de olabilir – thatOneGuy

cevap

3

"Bu değer yazı tipine bağlı olarak değişebilir mi?"

sen Onlara bir 'birimleri kullanırsak yazı boyutu onlar

https://www.w3.org/WAI/GL/css2em.htm

Yani kaydırır .attr("dy", "0.7em") gibi genel kuralları kullanabilirsiniz göreceli boyutlu birimi konum olarak ne olduğu önemli olmamalı Metin y-koğuşları, yazı tipi yüksekliğinin% 70'i kadar

İlgili konular