允许用户更改网页字体大小 - ASP.Net

时间:2009-07-31 20:31:18

标签: asp.net fonts coding-style stylesheet

我想在我的网站上提供一项功能,让用户通过点击某些内容(如+和 - 图像等)来增加和减少字体大小。但是我也想要:

  • 确保当字体大小增加时,我的网站布局不会搞砸
  • 在我的机器上测试场景以确定上面的要点

我认为我想要的是一个独立于浏览器字体大小和机器字体大小的解决方案,否则我将无法测试和控制结果

在我的网络应用程序中,我没有硬编码字体大小,但在某些地方我指定了文本框长度,如宽度= 50px,我认为需要更改..我应该使用哪个单位?

我正在考虑使用主题并将标签和文本框的字体大小定义为小,小,大等等。不确定这是否有效?


更新:我在其他论坛上也提出了这个问题:http://forums.asp.net/t/1453926.aspx

基本上,从所有答案中,我都认为有两种方法:

  1. 使用em和body字体大小: 身体 { font-size:62.5%; } p { font-size:1.2em; }
  2. 当你必须增加/减少字体大小时,只需增加/减少正文字体大小百分比

    1. 使用绝对字体大小: css定义了从xx-small到xx-large的字体大小范围(7),因此你可以在css中定义font-size:small ..
    2. 我发现了一篇关于这些字体大小的好文章: http://meyerweb.com/eric/articles/webrev/199908a.html

      然而这两个选项都不是我想要的。我正在寻找真正意义上的绝对尺寸设置,所以如果我设置font-size:large,然后我增加浏览器尺寸,字体大小应该保持相同..现在即使这些“绝对字体大小”依赖于当前浏览器字体大小。任何帮助????

4 个答案:

答案 0 :(得分:1)

我会用jQuery来做这件事。这个问题并不完全相同,但突出显示的答案非常接近你想要达到的目标:

Allow users to change font size in a webpage

这个也很不错:http://webrocket.ulmb.com/ability,虽然演示是一个小裤子

答案 1 :(得分:1)

您可能需要查看一些调查,看看这是否是所需功能。我认识的大多数人都会使用他们的网络浏览器的内置功能来操纵字体大小。通过我自己在各种网站上的测试和开发,大多数客户忽略了网站上的字体大小控件。从长远来看,可能会节省一些时间:)

如果您发现实际执行此操作,最大的问题是确保您的字体大小增加平衡,并且您的布局和CSS设计模式是“流畅的”和“可扩展的”。这实际上有点难,因为如果网站设计是固定宽度的布局,那么你可能会遇到内容无法再适应的问题,这可能会让你非常沮丧。 / p>

如果不是,那么再次确保在元素和字体大小之间保持平衡。就个人而言,我会将字体更改留给Web浏览器。大多数浏览器都非常适合自己操作布局。

答案 2 :(得分:0)

你非常接近解决方案,我知道现在回复这个帖子为时已晚,但是猜测它可能对遇到这个问题的用户有用

简单地使用Jquery选择器使用css更改字体大小。

function font_resize(act)
{
    if(act=='small')
    {
        $("body").css("font-size","10px");          
        $("#footer").css("font-size","9px");

    }
    else if(act=='mid')
    {
        $("body").css("font-size","12px");
        $("#footer").css("font-size","11px");

    }
    else if(act=='large')
    {
        $("body").css("font-size","15px");
        $("#footer").css("font-size","14px");

    }
}

答案 3 :(得分:-1)

jQuery,请参阅Easy text resizer with jQuery