gpt4 book ai didi

css - Bootstrap 中基于容器宽度的字体缩放

转载 作者:行者123 更新时间:2023-11-28 04:42:52 26 4
gpt4 key购买 nike

如何在 Bootstrap 框架中缩放一段文本(使用字体缩放)?

how to scale a block of text

列的宽度是主要的困难,因为它是流动的。

最佳答案

Bootstrap 在网格系统中使用 CSS @media [ link ] 所以你可以使用带有 Bootstrap 维度的媒体查询来设置另一个 CSS 属性。查看fiddle并调整 js 和显示窗口之间的栏的大小,以查看标题字体大小更改的效果。

<div class="container">
<h1 class="header">header</h1>
<div class="row">
<div class="colDiv col-sm-6 col-md-4 col-lg-3">
<p>ColumnA</p>
</div>
<div class="colDiv col-sm-6 col-md-8 col-lg-9">
<p>ColumnB</p>
</div>
</div>
</div>

编辑:

好的,所以我写了一点 JS 函数来做到这一点。您设置六个参数(按顺序)来操作 fontSize:

alignFont(getElement,defaultSize,defaultWidth,acceleration,min,max)
  • getElement - 设置要在其中操作的元素的字体大小
  • defaultSize - 字体的默认(起始)大小
  • defaultWidth - 设置默认字体大小的窗口宽度
  • 加速度 - 1 为正常,2 - 增加两倍,.5 - 增加较慢
  • min - 最小字体大小(字体大小不能小于此值)
  • ma​​x - 最大 fontSize(字体大小不能大于该值)

以及示例(调整js框和显示框之间的栏的大小):FIDDLE

    var a = document.getElementById('flexibleHeaderA');
var b = document.getElementById('flexibleHeaderB');
var c = document.getElementById('flexibleHeaderC');
var d = document.getElementById('flexibleHeaderD');
var e = document.getElementById('flexibleHeaderE');

var settingA = alignFont.bind(this, a, 24, 600, 1, 20, 30);
var settingB = alignFont.bind(this, b, 24, 600, 1.5, 12, 60);
var settingC = alignFont.bind(this, c, 30, 600, 1, 15, 35);
var settingD = alignFont.bind(this, d, 22, 1000, .5, 12, 30);
var settingE = alignFont.bind(this, e, 16, 80, 1, 12, 26);

settingA();
settingB();
settingC();
settingD();
settingE();

window.addEventListener('resize', function() {
settingA();
settingB();
settingC();
settingD();
settingE();
});


function alignFont(getElement, defaultSize, defaultWidth, acceleration, min, max) {
var cWidth = document.body.offsetWidth;
var newSize = (Math.pow(cWidth / defaultWidth, acceleration)) * defaultSize;
var limitSize = newSize >= max ? max : newSize <= min ? min : newSize;
getElement.style.fontSize = limitSize + "px";
}
h3 {
border: dotted 1px #33aaff;
margin: 10px;
text-align: center;
}
<h3 id="flexibleHeaderA">Hello I'm flexible header</h3>
<h3 id="flexibleHeaderB">Hello I'm flexible header</h3>
<h3 id="flexibleHeaderC">Hello I'm flexible header</h3>
<h3 id="flexibleHeaderD">Hello I'm flexible header</h3>
<h3 id="flexibleHeaderE">Hello I'm flexible header</h3>

关于css - Bootstrap 中基于容器宽度的字体缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41115800/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com