当前位置: 首页 > 面试题库 >

根据div大小调整字体大小

年文柏
2023-03-14
问题内容

它由9个框组成,中间带有文本。我已经制作了框,以便它们可以随着屏幕大小的变化而调整大小,以便始终保持在同一位置。

但是,即使我使用百分比,文本也不会调整大小。

  1. 如何调整文本的大小,使其在整个页面上始终具有相同的比例?
  2. 这是处理多种分辨率的合适解决方案吗?还是我应该@media在CSS中进行很多检查并为每种媒体类型设置许多布局?

```
html,

body {

 height: 100%;

 width: 100%;

}

#launchmain {

 width: 55%;

 display: inline-block;

 position: relative;

 top: 10%;

 left: 25%;

}

#launchmain:after {

 padding-top: 79.26%;

 display: block;

 content: '';

 margin-top: 10px;

}

#box1 {

 border: 1px solid #000000;

 position: absolute;

 width: 25.37%;

 height: 21.88%

}

#box2 {

 border: 1px solid #000000;

 width: 48.48%;

 height: 21.88%;

 position: absolute;

 left: 25.64%

}

#box3 {

 border: 1px solid #000000;

 width: 25.37%;

 height: 21.88%;

 position: absolute;

 left: 74.39%;

}

#box4 {

 border: 1px solid #000000;

 width: 33.235%;

 height: 53.84%;

 position: absolute;

 top: 22.07%;

}

#maininvite {

 border: 1px solid #000000;

 width: 33.53%;

 height: 53.84%;

 position: absolute;

 top: 22.07%;

 left: 33.235%;

}

#box6 {

 border: 1px solid #000000;

 width: 33.235%;

 height: 53.84%;

 position: absolute;

 top: 22.07%;

 left: 66.765%;

}

#box7 {

 border: 1px solid #000000;

 width: 25.37%;

 height: 21.88%;

 position: absolute;

 top: 76.2%;

}

#box8 {

 border: 1px solid #000000;

 width: 48.48%;

 height: 21.88%;

 position: absolute;

 left: 25.64%;

 top: 76.2%;

}

#box9 {

 border: 1px solid #000000;

 width: 25.37%;

 height: 21.88%;

 position: absolute;

 top: 76.2%;

 left: 74.39%;

}

#maininvite h2 {

 font-size: 180%;

}

p {

 position: relative;

 font-size: 80%;

}

 <div id="box1"></div>

 <div id="box2"></div>

 <div id="box3"></div>

 <div id="box4"></div>

 <div id="maininvite">

   <h2> header</h2>

   <p>not a lot of text here but still overflowing</p>

 </div>

 <div id="box6"></div>

 <div id="box7"></div>

 <div id="box8"></div>

 <div id="box9"></div>

```


问题答案:

关于您的代码,请参阅@Coulton。您需要使用JavaScript。

检出FitText(它确实在IE中起作用,他们只是以某种方式使其站点球形化或BigText。

FitText将允许您相对于其所在的容器缩放某些文本,而BigText则更多地是将文本的不同部分调整为容器内相同的宽度。

BigText会将您的字符串设置为容器的正好宽度,而FitText的像素完美度较低。首先将字体大小设置为容器元素宽度的1/10。默认情况下,它不适用于所有字体,但它的设置可让您减小或增大调整大小的“功效”。它还允许您设置最小和最大字体大小。第一次工作会需要一些摆弄,但是确实很好。

<-目前正在此处使用它。据我了解,BigText在我的上下文中根本无法工作。

对于那些使用Angularjs的用户,这是我制作的Angular版本的FitText。

这是一个LESS mixin,可用于使@humanityANDpeace的解决方案更加美观:

@mqIterations: 19;
.fontResize(@i) when (@i > 0) {
    @media all and (min-width: 100px * @i) { body { font-size:0.2em * @i; } }
    .fontResize((@i - 1));
}
.fontResize(@mqIterations);

感谢@NIXin,这是SCSS版本!

$mqIterations: 19;
@mixin fontResize($iterations) { 
    $i: 1; 
    @while $i <= $iterations { 
        @media all and (min-width: 100px * $i) { body { font-size:0.2em * $i; } } 
        $i: $i + 1; 
    }
} 
@include fontResize($mqIterations);


 类似资料:
  • 我正在寻找一种比断点更精确的解决方案。我知道这需要JavaScript,但我很难找到合适的插件。 我网站上的大多数文本将保持不变,或者我将通过媒体查询对其进行调整(比如平板电脑和手机的90%)。这很好,但我正在为我的导航菜单和横幅等领域寻找“实时”解决方案。 在此处查看站点 您可以使用基本字体大小为100%的ems查看我的所有文本的相对大小 如果你调整网站的大小,你会注意到菜单“崩溃”,因为字体太

  • 我正在尝试将文本放入一个有限的空间(黄色容器)。如何在Android中解决这个问题? 在iOS中,该问题通过adjustsFontSizeToFit={true}解决。 我的代码:

  • 问题内容: 有人问过类似的问题,但是解决方案确实与我正在尝试做的事情相吻合。基本上,我有一篇标题为()的文章。我不想控制标题的长度,但是我也不想标题显示在多行上。CSS或jQuery是否可以根据标签的宽度来调整文本大小? 我知道如果可以检测到文本与边缘的重叠,我将如何处理伪代码: 如果有一个CSS属性,我可以设置为更好,但是我似乎找不到(在这种情况下,溢出不会起作用)。 问题答案: CSS否,Ja

  • 问题内容: 我一直试图(徒劳地)建立一个页面,当我更改窗口大小时,其元素将重新调整大小。我可以在CSS中使用它来处理图像,但是没有问题,但是我似乎无法在文本上完成相同的操作,而且我不确定在CSS中是否有可能。而且我似乎找不到能完成此任务的jQuery脚本。 当用户调整窗口大小时,我实质上希望页面能够动态流畅地缩放,而无需用户调用页面缩放。通过css在我的img div上这可以正常工作,但对于文本则

  • 嘿,伙计们,我使用 根据屏幕宽度大小调整我的字体。像这样使用.... 它在iPhone和android设备上看起来不错,比如5.5英寸的设备,但在我的Galaxy s9上看起来很糟糕。我想根据屏幕设置我的字体,它可以自行调整..我该怎么做

  • 请看下面的P5代码 这个小应用程序的目的是在画布上拖放图像,根据“上传”图像的宽度和高度改变其大小。 使用:成功加载图像(至少显示图像)后,我将其宽度和高度分配给变量和。接着是画布大小的变化。。。这会导致一个错误,画布的大小与上传的图像相同(在上选中),但不显示任何内容。 使用:当禁用上的画布大小更改并单击画布时,调整大小会完美地显示图像。 应用程序需要在不点击的情况下工作,在删除图像后应该自动更