【问题标题】:font resizing using jQuery使用 jQuery 调整字体大小
【发布时间】:2014-04-04 15:21:09
【问题描述】:

我有一个 id 为 mySpan 的跨度。我正在尝试通过 jquery 更改它的字体大小,如下所示:

$("#mySpan").css("font-size", "50px");

我也试过了

$("#mySpan").css("font-size", 50+"px");

但是什么也没发生,我可以像这样改变 span 的颜色:

$("#mySpan").css("color","#ff0000");

我做错了什么?

【问题讨论】:

  • 在这里工作正常jsfiddle.net/YdERS 是否使用 DOM 就绪处理程序包装? jQuery 加载了吗?控制台有什么错误吗?
  • 把你的代码包装在DOM Ready$(function(){ $("#mySpan").css("color","#ff0000"); })
  • 执行“检查元素”,然后检查应用的样式。您应该会在某处看到您的新尺寸被划掉,而实际尺寸在 css 文件或样式标签中。

标签: jquery css fonts font-size html


【解决方案1】:

这应该可以解决您的问题,但我更希望获得更多信息并以更正确的方式进行...

var mySpan = $("#mySpan")[0]
var style = mySpan.style;
style += (style != "" ? ";" : "") + "font-size:50px !important;";
mySpan.style = style;

这会将新字体大小与!important一起直接附加到所选元素的样式标签中,这将覆盖其他任何地方的任何样式。

这很难看,如果有其他方法,我永远不会自己使用它。找到并修复最初应用的样式会是一种更好的方法,但如果这不可能,那么您就有了。

【讨论】:

    【解决方案2】:

    你的代码没问题,至于问题,我会大胆猜测(实际上并不那么疯狂),你有另一个覆盖它的值(例如一个字体大小为:xxPx !重要的类),或定义了字体大小的子元素等。

    Anoop Joshi 也有一个很好的观点。这可能也是一个问题。

    另一种可能性是标记损坏(例如 2 个具有相同 id 的元素 - #mySpan)。在这种情况下,选择器将只返回第一个,并修改它的字体,而第二个保持不变。

    【讨论】:

    • 是的,但它可能会帮助其他有这个问题的人,所以我仍然认为这是一个有效的观点。
    • 你是对的,最好是尽可能的描述性
    【解决方案3】:

    很确定,最上面的那个不能在那里工作的唯一原因是它被其他一些 CSS 样式覆盖了..

    试试这个:

     $("#mySpan").css("font-size", "50px !important;");
    

    关键字 important 将强制使用它,而不是覆盖您的更改的其他 css。

    更新: 不知道(.css 不支持重要的)所以而是将它放在一个类中并将类添加到 myspan:

    CSS:

    .fontSizeFifty
     {  font-size: 50px !important; }
    

    JQuery:

    $('#mySpan').addClass('fontSizeFifty');
    

    【讨论】:

    • 否,css() 方法不支持!important 语句
    • 不知道.. 谢谢沃尔夫
    • 恕我直言,使用类应该始终是设置样式 +1 的首选方法
    【解决方案4】:

    它工作正常。尝试在 document.ready 中给出它

     $(document).ready(function () {
            $("#mySpan").css("font-size", "50px");
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-07
      • 2018-10-15
      • 2012-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多