2014-02-19 4 views

ответ

4

Один из вариантов:

<g transform="translate(300, 300)"> 
    <circle r="5px"></circle> 
    <text baseline-shift="-20px" text-anchor="middle">My Label</text> 
</g> 

-20px зависит от размера шрифта, и, возможно, кто-то имеет относительный способ сделать падение, но text-anchor="middle" центрирует текст.

+0

Это работает отлично. Текст будет постоянным размером, определенным в px, поэтому относительное решение (хотя было бы неплохо) не требуется. Спасибо. – user1405177

+3

Вы можете использовать блок 'em', чтобы дать вам значение, основанное на размере шрифта. Я не думаю, что «baseline-shift» поддерживается во всех браузерах, поэтому я рекомендую использовать 'y' или' dy' вместо этого. В приведенном примере это будет ' My Label', так как 5 - радиус круга, который нам тогда необходимо компенсировать текущий размер шрифта, чтобы текст находился под кругом. –

+0

Учитывается ли это? Текст и круг рассеиваются при увеличении. –

Смежные вопросы