3

可能重复:
自动调整大小的动态文本以填充固定大小的容器

我有一个显示用户名的框。但是我发现它只能容纳 10 个字母 - 我使用标准h1字体大小。

有没有办法font-size根据字母的数量来改变?我的用户名范围从 3 到 10 个字符。

4

1 回答 1

4

请尝试以下代码。

<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script language="javascript">

    $(function() {
        var len_fit = 10; // According to your question, 10 letters can fit in.
        var un = $('#user_name');

        // Get the lenght of user name.
        var len_user_name = un.html().length;
        if(len_fit < len_user_name ){

            // Calculate the new font size.
            var size_now = parseInt(un.css("font-size"));
            var size_new = size_now * len_fit/len_user_name;

            // Set the new font size to the user name.
            un.css("font-size",size_new); 
        }
    });
</script>
</head>
<body>
    <h1 id="user_name">Your Long Name</h1>
</body>

</html>

我希望这可以帮助你。

于 2012-12-17T00:53:46.640 回答