2012-02-17 1 views
2

Я борюсь с этой проблемой в течение часа, и я не делаю никакого прогресса, поэтому я здесь.DIV не остается внутри другого DIV

Проблема, с которой я столкнулся, заключается в том, что у меня есть div, который просто не остается внутри другого.

Heres картину объяснить, что у меня есть и что я хочу: http://www.upload.ee/image/2086206/whatiwant.jpg

Живая Версия: http://haavistu.eu/shop/index.php?route=product/category&path=74_61

То, что я сделал до сих пор: я поместил генераторную цена код и все кнопки внутри a div классифицировано stuffholder. Затем я разместил div stuffholder справа.

I tought Я был сделан, но то, что у меня есть, видно на картинке.

Все соответствующий код:

<div class="product-list"> 
    <?php foreach ($products as $product) { ?> 
    <div> 

    <div class="image"> 
     <?php if ($product['thumb']) { ?> 
      <a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a> 
     <?php } ?> 
     <?php if ($product['rating']) { ?> 
      <img src="catalog/view/theme/default/image/stars-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" /> 
     <?php } ?> 
    </div> 

    <div class="stuffholder"> 
     <?php if ($product['price']) { ?> 
       <div class="price"> 
        <?php if (!$product['special']) { ?> 
        <?php echo $product['price']; ?> 
        <?php } else { ?> 
        <span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span> 
        <?php } ?> 
       </div> 
      <?php } ?> 
     <div class="cart"> 
      <a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a> 
     </div> 
     <div class="wishlist"> 
      <a onclick="addToWishList('<?php echo $product['product_id']; ?>');"><?php echo $button_wishlist; ?></a> 
     </div> 
     <div class="compare"> 
      <a onclick="addToCompare('<?php echo $product['product_id']; ?>');"><?php echo $button_compare; ?></a> 
     </div> 
    </div> 

     <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> 
     <div class="description"><?php echo $product['description']; ?></div> 
    </div> 
    <?php } ?> 

    </div> 

Извините за ужасный Намереваясь. Изображение, название и описание, похоже, работают нормально.

Heres СМЧ

.product-list > div { 
    overflow: auto; 
} 
.product-list .right { 
    float: right; 
} 
.product-list .image { 
    float: left; 
} 
.product-list .image a { 
    display: block; 
} 
.product-list .image img { 
    display: block; 
} 
.product-list .stuffholder { 
    display: block; 
    float: right; 
} 
.product-list .price { 
} 
.product-list .price-old { 
    display: block; 
} 
.product-list .wishlist a { 
    display: block; 
} 
.product-list .compare a { 
    display: block; 
} 

Убран совершенно ненужную вещи прочь.

Когда я смотрю исходный код все это создает, я вижу:

<div> 
    <div class="image"><a href="xxx/shop/index.php?route=product/product&amp;path=74&amp;product_id=50"><img src="xxx/shop/image/cache/data/prosessorit/Core-i5-2500K-and-Core-i7-2600K-Review-614x614-80x80.jpg" title="Intel Core i5-2500K 3,3Ghz Prosessori - LGA1155" alt="Intel Core i5-2500K 3,3Ghz Prosessori - LGA1155" /></a> 
          <img src="catalog/view/theme/default/image/stars-5.png" alt="Perustuu 1 arvioon." /> 
      </div> 
    <div class="name"><a href="xxx/shop/index.php?route=product/product&amp;path=74&amp;product_id=50">Intel Core i5-2500K 3,3Ghz Prosessori - LGA1155</a></div> 
    <div class="description"> 
    Intel’s most popular family member is more adaptable than ever and unlocked. The 2nd generation..</div> 

    <div class="stuffholder"> 
     <div class="price">198,00€</div> 
     <div class="cart"> 
      <a onclick="addToCart('50');" class="button"><span>Lisää koriin</span></a> 
     </div> 
     <div class="wishlist"> 

      <a onclick="addToWishList('50');">Lisää toivelistaan</a> 
     </div> 
     <div class="compare"> 
      <a onclick="addToCompare('50');">Lisää vertailuun</a> 
     </div> 
    </div> 

</div> 

Соответственно к исходному коду, все это должно работать хорошо. Может ли кто-нибудь сказать мне, когда div price не останется внутри div stuffholder и как его исправить?

+1

Было бы полезно, чтобы увидеть сгенерированный HTML, чем код PHP – Madbreaks

+0

Поскольку это проблема CSS, а не проблема PHP; сгенерированный HTML будет более полезен, чем PHP. Не могли бы вы опубликовать это вместо этого? – FakeRainBrigand

+0

Добавил его, спасибо за упоминание. – HUTHUN

ответ

0

Использование overflow: hidden; в родительском

+0

Можете ли вы объяснить немного больше. Какой родитель? – HUTHUN

+0

.product-list> div { overflow: hidden; } – eveevans

0

Глядя на ваш живой пример в исходном коде, он не отражает то, что указывает на ваш вопрос:

<div> 
<div class="right"> 
    <div class="cart"> 
     <a onclick="addToCart('50');" class="button"><span>Lisää koriin</span></a> 
    </div> 
    <div class="wishlist"> 
     <a onclick="addToWishList('50');">Lisää toivelistaan</a> 
    </div> 
    <div class="compare"> 
     <a onclick="addToCompare('50');">Lisää vertailuun</a> 
    </div> 
</div> 
<div class="left"> 
    <div class="image"> 
     <a href="http://haavistu.eu/shop/index.php?route=product/product&amp;path=74_61&amp;product_id=50"><img src="http://haavistu.eu/shop/image/cache/data/prosessorit/Core-i5-2500K-and-Core-i7-2600K-Review-614x614-80x80.jpg" title="Intel Core i5-2500K 3,3Ghz Prosessori - LGA1155" alt="Intel Core i5-2500K 3,3Ghz Prosessori - LGA1155"></a> 
     <img src="catalog/view/theme/default/image/stars-5.png" alt="Perustuu 1 arvioon."> 
    </div> 
    <div class="price">198,00€</div> 
    <div class="name"> 
     <a href="http://haavistu.eu/shop/index.php?route=product/product&amp;path=74_61&amp;product_id=50">Intel Core i5-2500K 3,3Ghz Prosessori - LGA1155</a> 
    </div> 
    <div class="description"> 
     Intel’s most popular family member is more adaptable than ever and unlocked. The 2nd generation.. 
    </div> 
</div> 

Цена в осталось DIV, видеть?

+0

Я только что понял, что небольшой код Javascript контролирует список, который отображается как список или сетка. Я подозреваю, что это то, что вызывает его. Придется искать. – HUTHUN

0

Самый простой способ сделать это с тем, что у вас есть, это добавить несколько правил в ваш селектор .product-list .price.

.product-list .price { 
    color: #333333; 
    font-size: 16px; 
    font-weight: bold; 
    position: relative; /* this is new */ 
    right: -85px;  /* this is new */ 
} 

Однако, вероятно, было бы лучше, если бы цена была в документе прямо перед кнопкой оформления, а не где она сейчас.

+0

Я думаю, что я начинаю расколоть этот орех. Просто проверил мой код еще раз, и есть способ List и Grid взглянуть на элементы, и немного Javascript контролирует его и помещает элементы вокруг. Я думаю, это то, что контролирует его. Я дам ваш код попробовать. – HUTHUN

0

page you linked to имеет разный макет, чем тот, который вы разместили. Есть два DIV. A div.left и a div.right. Ваша цена указана в «слева» ... поэтому она идет влево, а не вправо. Простое перемещение поможет решить проблему.

Код с этой страницы выглядит примерно так. (После фиксации.)

<div class="right"> 
    <div class="price"> 
    1 033,00€ 
    </div> 

    <div class="cart"> 
    <a class="button" onclick="addToCart('51');"><span>Lisää koriin</span></a> 
    </div> 

    <div class="wishlist"> 
    <a onclick="addToWishList('51');">Lisää toivelistaan</a> 
    </div> 

    <div class="compare"> 
    <a onclick="addToCompare('51');">Lisää vertailuun</a> 
    </div> 
</div> 

<div class="left"> 
    <div class="image"> 
    <a href= 
    "http://haavistu.eu/shop/index.php?route=product/product&amp;path=74_61&amp;product_id=51"> 
    <img alt="Intel Core i7-3960X 3,3GHz Prosessori - LGA2011" title= 
    "Intel Core i7-3960X 3,3GHz Prosessori - LGA2011" src= 
    "http://haavistu.eu/shop/image/cache/data/prosessorit/Intel%20Core%20i7-3960X%203,3GHz%20-%20LGA2011-80x80.jpg"></a> 
    </div> 

    <div class="name"> 
    <a href= 
    "http://haavistu.eu/shop/index.php?route=product/product&amp;path=74_61&amp;product_id=51"> 
    Intel Core i7-3960X 3,3GHz Prosessori - LGA2011</a> 
    </div> 

    <div class="description"> 
    The 2nd generation Intel Core i7-3960X Processor Extreme Edition is super-smart, 
    ultra-threaded, .. 
    </div> 
</div> 

 Смежные вопросы

  • Нет связанных вопросов^_^