2010-11-09 76 views
0

我建了一个网站。我为所有div标签使用了液体布局。它的工作正常。我面临的问题是,当我从1024 * 768降低屏幕分辨率到800 * 600时,文本大小并未减小;一个div中的文本与另一个div中的文本重叠。我提到了像素中文字的大小。谁能告诉我如何解决这个问题。网站布局问题

+0

这与PHP有什么关系? – Hamish 2010-11-09 02:11:32

+0

您的网站是否需要在800x600可见?我们发现,在一个拥有数百万次访问量的网站上,在一年的时间内,该决议的用户数量不足100人。 – 2010-11-09 02:36:19

回答

1

文字大小不会随其容器的比例缩小。您可以在此容器上设置overflow: auto;,并且它将滚动它内部的内容(当它不适合时),而不是让它重叠。

0

如果问题是你的文字不缩水;只需添加一些JavaScript功能以减少窗口缩小时的文字大小。如果你必须这样做你的网站才能正常工作,那么,伙计们,重新设计网站...

+0

重新设计网站意味着我应该使用固定布局 – sudh 2010-11-09 02:15:23

+0

不一定,但重新设计您的网站,以便它可以处理常见的解决方案。如果要做到这一点的唯一方法是使用固定布局,那么你应该尽一切办法。 – Ben 2010-11-09 02:30:08

+0

如何使用[这些单位](http://snook.ca/archives/html_and_css/vm-vh-units)? – alex 2015-04-17 01:41:20

0

查看Javascript的window.screen usage;你应该能够检测到它们的分辨率,并执行一个函数来设置起始字体大小。我不是一个JavaScript大师,但它会是这个样子......

document.onload = initTextSize; 

function initTextSize() { 
    var width = screen.width; 
    var height = screen.height; 

    if(width<=800 && height<=600) { 
     document.getElementByTagName("head").innerHTML('<style type="text/css">body { font-size : 1em; }</style>'); 
    } 
    else if(width<=1024 && height<=768) { 
     document.getElementByTagName("head").innerHTML('<style type="text/css">body { font-size : 1.6em; }</style>'); 
    } 

} 

我知道你可以用一个开关/功能的情况下做到这一点,但是这仅仅是我的,你怎么粗略估计”用Javascript去解决它。我认为innerHTML 将取代的内容(至少在某些浏览器中),而您希望新内容添加到您现有的样式表中。

另外,您可能想要考虑屏幕大小的变化 - 或者谁知道...在文档加载上可能不是调用该函数的最佳方式,但这应该指向正确的方向。