2013-05-20 2 views
1

Я использую twitter-bootstrap, и я пытаюсь подгонять текст (с большим размером шрифта), содержащийся в span4.Как динамически изменять размер текста в пределах диапазона?

Я пытаюсь изменить размер текста, чтобы он правильно вписывался в диапазон. В следующей скрипке вы сможете увидеть проблему: http://jsfiddle.net/DxcQy/ лучше, если вы видите результат здесь: http://jsfiddle.net/DxcQy/embedded/result/

HTML

<div class="container"> 
    <div class="row"> 
     <div class="span4"> 
      <h1>A</h1> 
     </div> 
     <div class="span4"> 
      <h1>AB</h1> 
     </div> 
     <div class="span4"> 
      <h1>ABC</h1> 
     </div> 
    </div> 
</div> 

CSS

.span4 h1{ 
    margin: 10px; 
    margin-top: 90px; 
    padding-top: 40px; 
    font-size: 14em; 
    font-weight: 800; 
    color: #282B36; 
    text-align: center; 
    display: block; 
    margin-left: auto; 
    margin-right: auto; 
} 
.span4{ 
    background: red; 
    height: 500px; 
} 

Затем я нашел плагин jQuery под названием FitText, и я пытался использовать его как это: http://jsfiddle.net/DxcQy/12/

HTML

<div class="container"> 
    <div class="row"> 
     <div class="span4"> 
      <h1>A</h1> 

     </div> 
     <div class="span4"> 
      <h1>AB</h1> 

     </div> 
     <div class="span4"> 
      <h1>ABC</h1> 

     </div> 
    </div> 
</div> 

CSS

.span4 h1 { 
    margin: 10px; 
    margin-top: 90px; 
    padding-top: 40px; 
    font-size: 14em; 
    font-weight: 800; 
    color: #282B36; 
    text-align: center; 
    display: block; 
    margin-left: auto; 
    margin-right: auto; 
    width: 100% 
} 
.span4 { 
    background: red; 
    height: 500px; 
} 

JS

$(".span4 h1").fitText(1.3, { minFontSize: '8em', maxFontSize: '14em' }); 

Но, как вы видите, буквы слишком малы.

Любая помощь или совет будут оценены, и если вам нужна дополнительная информация, сообщите мне, и я отредактирую эту публикацию.

+0

Если старые браузеры не проблема, вы можете просто использовать 'rem' (корень эм) и установите тело Font- размер к процентам. – adeneo

+2

(OT) Наличие более 1 'H1' на странице не является хорошим советом по SEO. (Представьте себе покупку газеты с двумя названиями названий заголовков ...) –

+0

Хорошо @roXon, я сделал это только для примера. ;) – harrison4

ответ

0

Использование BigText плагин: http://jsfiddle.net/DxcQy/17/

$(".span4").bigtext(
{ 
    childSelector: '> h1' 
}); 

Результат: enter image description here

+0

Да, я бы использовал этот плагин над FitText. Быстрый взгляд на источник FitTexts показывает, что он просто устанавливает размер шрифта (ширина элемента)/100, а так как теги h1 блокируют их ширину, всегда будут равны. – CeejeeB

Смежные вопросы