Jump to content
  • 0

Втиснуть блок, если есть место, а если нет,то оставить 100%


nikki4
 Share

Question

Вот сделал рыбу, что есть:

<div class="wrapper">  <div class="wrapper2">      <div class="photo"></div>    <div class="param"></div>  </div><div class="desc"></div></div>
.wrapper {width:500px; height:1000px; background:pink; margin:0 auto;}.photo {background:yellow;float:left;height:300px;width:200px;}.param {background:green;float:left; height:200px;width:200px;}.desc {background:black;float:left; height:400px;width:100%;}

тоже, онлайн: http://cssdeck.com/labs/usgkdfyd

 

задача:

если тех. характеристики товара  (param) короткие, т.е. есть полно свободного места, то втиснуть описание (desc), чтобы карточка товара выглядела так:

http://cssdeck.com/labs/kd56nsdh

Если же характеристик товара много, тогда просто растянуть описание под всем на 100%. Как на первой ссылке

 

Как такое сделать?

Edited by nikki4
Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Спасибо, но на реальном примере не работает.

Как я понял это связанно с тем, что поля высоты не заполнены. Я их выше заполнил просто, чтобы объяснить какой блок куда.

так то выглядит скорее так, где информация о яблоках, в случае если есть место после описания - переместить на верх. а если нет, оставить на 100% ширину под

http://jsfiddle.net/fv3hqtsc/2/

<div class="wrapper">  <div class="wrapper2">      <div class="photo"><img src="http://s1.iconbird.com/ico/2013/11/491/w256h2561384698911applered.png"/></div>     <div class="param">энергетическая ценность яблока</div>  </div><div class="desc">информация о яблоках</div></div>
.wrapper {width:500px; height:1000px; background:pink; margin:0 auto;}.photo {float:left;}.param {float:left; }.desc {float:left;}
Edited by nikki4
Link to comment
Share on other sites

  • 0

@nikki4, Работает, просто картинка с яблоком широкая, поэтому не помещается блок шириной 280px. Определись там как-то с размерами, не все же будет резиновое, и от этого исходи, что ставить в условие и какие значения подставлять блокам.

Link to comment
Share on other sites

  • 0

Да действительно.. тогда в чем дело?

вот пробую, сделал для теста такое, но оно не выдает ни Да, ни Нет.

<script type="text/javascript">var $bs-docs-example = $('.bs-docs-example');if($bs-docs-example.width() > 300){alert('Да');}else{alert('Нет'); }</script>
Link to comment
Share on other sites

  • 0

Спасибо, тогда почему так не работает?

переименовал класс без черточки, и вот тестирую:

следующий код - вообще ничего не выдает, никакое сообщение.

<script type="text/javascript">var $bsdocsexample = $('.bsdocsexample');if($bsdocsexample.width() > 300){alert('Да');}else{alert('Нет'); }alert('aaaa'); </script>

если же оставить так:

<script type="text/javascript">alert('aaaa');</script>

то пишет "аааа"

почему, что теперь не так?

 

при этом на jsfiddle работает

Edited by nikki4
Link to comment
Share on other sites

  • 0

@nikki4, Ну смотри - тут твой код отрабатывает как надо. Значит что-то не так у тебя локально. Возможно то что я предположил ранее 

jQuery библиотека подключена?
Воспользуйся консолью js браузера, туда выводятся все ошибки.
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy