Javascript 向量对齐文本,而它应该填充移动设备上的div

Javascript 向量对齐文本,而它应该填充移动设备上的div,javascript,html,css,responsive-design,Javascript,Html,Css,Responsive Design,我试图强制文本填充div,而div的高度和宽度未知。文本大小应灵活,具体取决于父级。我想归档如下内容: 该页面仅用于移动,因此我需要支持所有android/iphone浏览器。主要的问题是,每个移动浏览器支持不同的东西,而且很难在大多数*设备上运行这些东西 我尝试设置了元视口宽度=“640”——它在最新的主流浏览器上运行良好,但所有较低的浏览器都有自己的实现,并且正在崩溃 我想到的下一件事是使用视口单位,但它们的支持也不好() 我为字体大小提供了以下代码: var ratio = parent

我试图强制文本填充div,而div的高度和宽度未知。文本大小应灵活,具体取决于父级。我想归档如下内容:

该页面仅用于移动,因此我需要支持所有android/iphone浏览器。主要的问题是,每个移动浏览器支持不同的东西,而且很难在大多数*设备上运行这些东西

我尝试设置了
元视口宽度=“640”
——它在最新的主流浏览器上运行良好,但所有较低的浏览器都有自己的实现,并且正在崩溃

我想到的下一件事是使用视口单位,但它们的支持也不好()

我为字体大小提供了以下代码:

var ratio = parent.offsetWidth * 85/100 / text.offsetWidth - 0.3;

text.style.fontSize = (10 * ratio > 85 ? 85 : 10 * ratio) + "px";

但这并不是说精确和矢量居中仍然是一个谜。

也许动态设置字体大小是实现这一点的正确方法。但是,不要使用<>代码>宽度>代码>,你可以考虑使用<代码>身高作为比例。因此,计算div的高度可能是不可避免的

对于垂直对齐,有几种解决方案:

  • 将文本换行。并将span的
    显示
    设置为
    内联块
    。向跨度中添加一个高度为100%的伪元素。如前所述,将
    垂直对齐:中间
    设置为跨度和伪元素。确保设置父级
    div
    的高度,必要时使用Javascript

  • 行高度设置为与
    div
    的高度相同

  • 设置父div和子span的
    高度
    ,以及
    显示:块;页边距:自动


  • 你不能支持“全部”。“所有”都不存在,不可能在现实世界中正确使用。我指的是最流行的设备。至少有android 4.0+浏览器。我想知道为什么父div的高度未知,如果它只有一个子节点
    REGISTER
    textNode。对不起,我忘了将其标记为已应答。第二个建议成功了,谢谢!