質問 > フロント機能 > 商品一覧の表示くずれ |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
leoism |
投稿日時: 2009/1/19 14:19
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
商品一覧の表示くずれ お世話になります。
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=2412&forum=10&viewmode=flat&order=ASC&start=0 を参考に、商品一覧ページを、横2個、縦5個ずつ表示するように、 CSSと表示件数を設定しました。 ところが、IE7(6は未確認)でのみ、表示が □□ □□ □ □□ □ □□ というように、歯抜けになってしまいます。 FireFox、Google Chromeでの表示結果は、思い通り □□ □□ □□ □□ □□ となるのですが、IEが・・・。 歯抜けのパターンは、マイページ違っています。 CSSを何度も見直してはみたものの、幅・高さとも margin落ちするようなサイズでは無いのでどうも納得が いかないです。 ちなみに、何度か F5 リロードしているうちに、正常な 表示になることもあります。 一覧横並びのカスタマイズをされた方で、同じような症状が 出た方がいらっしゃれば、対処法などをお聞かせいただければ 幸いです。 よろしくお願いいたします。 使用環境 ECcube 2.3.2 PHP 4.4.6 MySQL 4.1.21 |
seasoft |
投稿日時: 2009/1/20 21:52
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 商品一覧の表示くずれ 当方もこの症状には悩まされました。
同一ページでもリロードすると、正常に表示されたりするんですよね・・・ IEのレンダリングエンジンのバグなんでしょうね。 たしか、行内最終列で、フロート解除(強制改行だったかも)するようにテンプレートをカスタマイズして回避しました。
|
leoism |
投稿日時: 2009/1/22 14:49
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 商品一覧の表示くずれ 回答ありがとうございます。
自分で作っている該当するテンプレートの部分は <!--{section name=cnt loop=$arrProducts}--> <!--{assign var=id value=$arrProducts[cnt].product_id}--> <!--▼商品ここから--> <div class="listarea"> <!--★商品名★--> <h3><a href="<!--{$smarty.const.DETAIL_P_HTML}--><!--{$arrProducts[cnt].product_id}-->"><!--{$arrProducts[cnt].name|escape}--></a> </h3> <div class="listphoto"> <!--★画像★--> <a href="<!--{$smarty.const.DETAIL_P_HTML}--><!--{$arrProducts[cnt].product_id}-->" class="over"><!--商品写真--><img src="<!--{$smarty.const.IMAGE_SAVE_URL|sfTrimURL}-->/<!--{$arrProducts[cnt].main_list_image}-->" alt="<!--{$arrProducts[cnt].name|escape}-->" class="picture" /></a> <div class="btnbox"><!--★詳細ボタン★--> <!--{assign var=name value="detail`$smarty.section.cnt.iteration`"}--> <a href="<!--{$smarty.const.DETAIL_P_HTML}--><!--{$arrProducts[cnt].product_id}-->" onmouseover="chgImg('<!--{$TPL_DIR}-->img/products/b_detail_on.gif','<!--{$name}-->');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/products/b_detail.gif','<!--{$name}-->');"> <img src="<!--{$TPL_DIR}-->img/products/b_detail.gif" width="115" height="25" alt="詳しくはこちら" name="<!--{$name}-->" id="<!--{$name}-->" /> </a> </div> </div> <div class="listrightblock"> <!--アイコン--> <!--商品ステータス--> <!--{if count($arrProducts[cnt].product_flag) > 0}--> <ul> <!--{section name=flg loop=$arrProducts[cnt].product_flag|count_characters}--> <!--{if $arrProducts[cnt].product_flag[flg] == "1"}--> <!--{assign var=key value="`$smarty.section.flg.iteration`"}--> <li><img src="<!--{$TPL_DIR}--><!--{$arrSTATUS_IMAGE[$key]}-->" width="65" height="17" alt="<!--{$arrSTATUS[$key]}-->"/></li> <!--{assign var=sts_cnt value=$sts_cnt+1}--> <!--{/if}--> <!--{/section}--> </ul> <!--{/if}--> <!--商品ステータス--> <!--アイコン--> <p class="listcomment"><!--★コメント★--><!--{$arrProducts[cnt].main_list_comment|escape|nl2br}--></p> <p> <span class="pricebox">価格<span class="mini">(税込)</span>: <span class="price"> <!--{if $arrProducts[cnt].price02_min == $arrProducts[cnt].price02_max}--> <!--{$arrProducts[cnt].price02_min|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->円 <!--{else}--> <!--{$arrProducts[cnt].price02_min|sfPreTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->円 <!--{/if}--></span></span> </p> </div> </div> <!--{/section}--> なのですが、この一番下の<!--{/section}-->の次の行に <div style="clear:both;"></div> と付け足してみたのですが、改善はされませんでした。 行内最終列とは、どのような意味でしょうか? ご多忙かと存じますが、よろしくご回答願います。 |
seasoft |
投稿日時: 2009/1/22 22:21
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 商品一覧の表示くずれ 横3列の場合、3列ごと(=1行ごと)です。
|
leoism |
投稿日時: 2009/1/23 9:34
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 商品一覧の表示くずれ お返事ありがとうございます。
PHPのループのコード内に、2列(自分は2個並びにしてます)で float解除のcssを入れるという理解で良いでしょうか? また、そのような処理をさせるPHPコードがあるのでしょうか。 調べてまた、コメントさせていただきます。 ありがとうございました |
leoism |
投稿日時: 2009/1/30 9:17
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 商品一覧の表示くずれ(解決) 解決しました。
といっても、教えてgooで教えてもらったのですが・・・。 list.tplの中の商品読み込み部分 <!--{section name=cnt loop=$arrProducts}--> <!--{assign var=id value=$arrProducts[cnt].product_id}--> <div class="listarea"> 〜〜中略〜〜 </div> <!--{/section}--> これを <!--{section name=cnt loop=$arrProducts}--> <!--{assign var=id value=$arrProducts[cnt].product_id}--> <div class="listarea"> 〜〜中略〜〜 </div> <!--{ if $smarty.section.cnt.index%2 == 1 }--> <div style="clear:both;"></div> <!--{ /if }--> <!--{/section}--> このようにif文を追加することで出来ました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |