繁体   English   中英

Magento media.phtml产品 <img> 是否具有style =“ top:”?

[英]Magento media.phtml product <img> has style=“top: ”?

我想从所有产品视图的左列中的catalog.xml中移动product.info.media块。

为了达到这个目的,我在local.xml文件中添加了两行:

<catalog_product_view>
    <reference name="left">
        <block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>
    </reference>
    <reference name="product.info">
        <action method="unsetChild"><child>media</child></action>
    </reference>
</catalog_product_view>

media.phtml是二进制文件,与magento 1.7.0.2版本中的默认文件相同。

奇怪的是,网页上的产品图片具有以下代码:

<img id="image" src="path/to/image.jpg" alt="" title="" style="position: relative; left: 0px; width: 220px; top: 215px;">

为什么为top定义了样式? 由于此样式是在元素内部定义的,因此我什至无法使用CSS更改它。 谁能解释一下magento的这种行为?

media.phtml中正在创建的行如下所示:

    $_img = '<img id="image" src="'.$this->helper('catalog/image')->init($_product, 'image').'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
    echo $_helper->productAttribute($_product, $_img, 'image');

他们将我带到定义了productAttribute函数的app/code/core/Mage/Catalog/Helper/Output.php 但是,为什么为了天堂而设置了顶级样式? 这根本没有意义。 如果我想设置它,我会使用CSS。

提前致谢。

我刚刚花了3个小时来解决这个问题……解决方案? 元素样式(包括“ top”)在( /js/product.js中设置 这是默认图像缩放操作的一部分。 希望这对像我一样通过Google看到此帖子的人有所帮助。

在magento 1.7.2中,/ js / product.js的第263 显示:

this.imageEl.style.top = this.imageY+'px';

作为快速技巧,您可以将其注释掉,但是我强烈建议您调整适合您需求的缩放javascript功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM