jQuery textFill不适用于不可见元素

时间:2018-07-15 22:14:21

标签: jquery

我尝试调整div内文本的大小,而<div id="main"></div> 则在另一个文本内。通常,以简化的方式,我有以下内容:

HTML:

#main:{
  display:none;
  width: 100%;
  height: 50%;
}
.square-text:{
  width:100%;
  height: 120px;
}

CSS:

$("#main").append("<div class='square-text' ><h3>...text here...</h3></div>");
$(".square-text").textFill({changeLineHeight: true, innerTag: 'h3', maxFontPixels: 0});

JS:

div

但是,当textFill#main显示在屏幕上时,$("#main, #main_other").append("<div class='text'><h3>Text Here</h3></div>"); $('.text').textfill({changeLineHeight: true, innerTag: 'h3', maxFontPixels: 0}); setTimeout(function(){ $("#main").css({"display":"inline"}); }, 5000);并没有产生任何效果,相反,它从一开始就在屏幕上显示。

我将非常感谢如何解决此问题! =)

#main{
  display: none;
  width:100%;
  height:50%;
}

#main_other{
  width:100%;
  height:50%;
}

.text{
  background:red;
  width:80%;
  height: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="http://jquery-textfill.github.io/js/textfill/jquery.textfill.js"></script>



<div id="main">

</div>

<div id="main_other">

</div>
if (result.get(CaptureResult.COLOR_CORRECTION_GAINS) != null) {
    channelVector = result.get(CaptureResult.COLOR_CORRECTION_GAINS);
}

1 个答案:

答案 0 :(得分:1)

尝试将CS​​S更改为:

#main:{
  visibility:hidden;
  width: 100%;
  height: 50%;
}

这应该可以解决您的问题。