微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 适合文本内部的div(高度和宽度),而不影响div的大小

我提前道歉,因为我知道这个问题已经出现了很多次,但我似乎找不到正确的解决方案(相信我已经尝试了几个!)

基本上,它是旧的“适合文本完美内部的div而不影响div的大小”.除非我是一个完整的数字,否则我相信CSS无法做到这一点.所以我的意思基本上不是做这样的事情:

#someDiv {
font-size: 12px;
}

要么…

#someDiv {
font-size: 1em;
}

…我想要做这样的事情:

#someDiv {
font-size: fluid;
}

意思是,无论这个div包含什么文本,都可以将它从左到右和从上到下完美匹配,没有溢出或空格.

拖网浏览无数网站寻找这个CSS解决方案后,我现在已经接受了CSS不能这样做,所以输入jQuery.

我已经在线找到了几个jQuery解决方案,但是它们只会缩放文本以适合宽度,但是我也希望它可以扩展到高度.所以有效我想对jQuery说:

“jQuery,找到$(这个)div和其中的任何文本,我想让你缩放它,以便尽可能的填充div的整个高度和宽度.

如果我还没有很好地解释自己,我附上了一个解释我正面临的问题和我正在寻找的解决方案的图形.

任何帮助将不胜感激.谢谢.

解决方法

这是同样的答案,但在Javascript
var autoSizeText;

autoSizeText = function() {
  var el,elements,_i,_len,_results;
  elements = $('.resize');
  console.log(elements);
  if (elements.length < 0) {
    return;
  }
  _results = [];
  for (_i = 0,_len = elements.length; _i < _len; _i++) {
    el = elements[_i];
    _results.push((function(el) {
      var resizeText,_results1;
      resizeText = function() {
        var elNewFontSize;
        elNewFontSize = (parseInt($(el).css('font-size').slice(0,-2)) - 1) + 'px';
        return $(el).css('font-size',elNewFontSize);
      };
      _results1 = [];
      while (el.scrollHeight > el.offsetHeight) {
        _results1.push(resizeText());
      }
       return _results1;
    })(el));
  }
  return _results;
};

$(document).ready(function() {
  return autoSizeText();
});

顺便问一下…如果您需要将coffeescript转换为javascript,只需转到js2coffee.org

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐