Jeśli chcesz ustawić rozmiar czcionki jako procent szerokości rzutni, użyj vw
jednostki:
#mydiv { font-size: 5vw; }
Inną alternatywą jest użycie SVG osadzonego w kodzie HTML. To będzie tylko kilka linijek. Atrybut rozmiaru czcionki elementu tekstowego zostanie zinterpretowany jako „jednostki użytkownika”, na przykład te, dla których jest zdefiniowany obszar wyświetlania. Jeśli więc zdefiniujesz rzutnię jako 0 0 100 100, wówczas rozmiar czcionki 1 będzie równy jednej setnej rozmiaru elementu svg.
I nie, nie ma sposobu, aby to zrobić w CSS za pomocą obliczeń. Problem polega na tym, że wartości procentowe używane do określania rozmiaru czcionki, w tym wartości procentowe w obliczeniach, są interpretowane w kategoriach odziedziczonego rozmiaru czcionki, a nie rozmiaru kontenera. W tym celu CSS mógłby użyć jednostki o nazwie bw
(szerokość pola), więc można powiedzieć div { font-size: 5bw; }
, ale nigdy nie słyszałem takiej propozycji.