2011-06-03 73 views
0

我想在页面上显示一些照片,它打破了页面的样式。这是一个例子。查看该页面的右侧,图像被打破,他们实际上得到显示在其他HTML元素就像一个H2标签,它说:“即将推出”显示一些图像似乎打破了谷歌造型

这里举例:

http://www.comehike.com/outdoors/parks/park.php?park_id=15

任何想法如何解决这个问题? Google Chrome的问题更严重

+1

http://validator.w3.org/check?uri=http%3A%2F%2Fwww.comehike.com%2Foutdoors%2Fparks%2Fpark.php%3Fpark_id%3D15&charset=%28detect+automatically%29&doctype=Inline&group= 0 – Jan 2011-06-03 15:02:56

回答

2

html标记有点令人困惑,因为它们都使用http://wwww引用,但它们托管在同一台服务器上。也许我错过了一些东西,但你也许可以使用本地站点路径相对于网页的东西,会有点简化类似下面非工作代码示例

<span style="margin: 3px;"> 
<a href="hikes/hike_image.php hike_photo_id=&amp;photo_path=img/hiking_photos/108_2/full_cannon2.jpg"> 
<img src="img/hiking_photos/108_2/small_cannon2.jpg" 
style="border: none;"></a> 
</span> 

这将使一个更快的加载时间,节省带宽,只是在我非常谦虚的意见中更简单明了。当他们在远程站点上时,通常会在图像链接中使用http://。

当我加载页面时,有多个损坏的图像,看起来也许是生成打破布局的标记的脚本。

为了解决这个问题,我会翻出整个图像生成的东西,并简化标记以使其“静态”工作,即不用输出图像和/或标记的脚本。

然后,一旦它以静态的方式工作,我会攻击动态输出,尽管我很少使用这种技术,因为我觉得大部分时间他们对我维护的小项目都是过度的。

快乐编码&好日子的朋友。

更新:

存储在易网站内容更改,可变图像路径:

一个(简单)的选择是使用好老的PHP为您的图像路径。 IE浏览器,在主脚本:

define('BASE_PATH',realpath('.')); 
define('IMG_PATH', BASE_PATH . "/img/); 
// to inlude an image:: 
<img src="<php echo IMG_PATH; ?> pic.jpg" /> 

这种方式,改变IMG_PATH会改变使用该变量的所有的img标签,并通过使用BASE_PATH即使你移动这样的工作或复制该网站在不同的主机上。

查找basename()函数man和相关函数以获取更多提示和示例。

+0

感谢您的评论。你能否解释一下如何缩短网址来节省加载时间和带宽?我对你的那点非常好奇。 – Genadinik 2011-06-03 15:24:53

+0

对于你加载的每一张图片,你都会产生一个apache必须处理的实际的http请求。至少,你有负载图像的DNS解析的开销。根据您的服务器和DNS /路由配置,如果DNS解析是通过hostfile在本地服务器上完成的,则您不会使用更多带宽,但是如果您的计算机未解析主机名,则必须调用您的服务解析域名和图像的提供者将来自该路线而不是本地提取。希望我清楚,这很难用我的英语不好解释! – stefgosselin 2011-06-03 15:42:15

+0

谢谢 - 这很有帮助。但是,如果网站增长,并且我需要第二台服务器,我是否必须将所有以这个/ directory /开始的路径放回到完整的http:// www .. call中? – Genadinik 2011-06-03 15:57:44