Jump to content
  • 0

float


RoleXXX
 Share

Question

Задача: Выставить в ряд 3 float:left, но запретить им перенос друг под друга при нехватке длины родителя.

Есть варианты? А может float тут вообще не при чем? Может поставить в линию без переноса 3 резиновых блока можно как-то по-другому?

Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0
Задача: Выставить в ряд 3 float:left, но запретить им перенос друг под друга при нехватке длины родителя.

Есть варианты? А может float тут вообще не при чем? Может поставить в линию без переноса 3 резиновых блока можно как-то по-другому?

display: inline-block;

Link to comment
Share on other sites

  • 0

FF2 Можно смело игнорировать, поэтому можно просто использовать inline-block.

Это для какого броузера? в ИЕ7 блоки встали друг под другом даже когда места достаточно.

А код слабо выложить этих трех блоков? А то читаю я ваши рассказы, и диву даюсь, про что вы там речь ведете...

Link to comment
Share on other sites

  • 0

Вот код одного блока. Их там может быть порядка десяти.

<div style="height:33px; position:relative; float:left; margin:0 5px 5px 0; background-color:#acb7be;">

<div style="float:left; margin:5px 2px 5px 5px;">
<input style="width:100px; margin:0; padding:0;" name="" type="text" />
</div>

<div style="float:left; margin:5px 2px 5px 0;">
<input style="width:29px; height:23px; margin:0; padding:0;" name="" type="button" value="§" />
</div>

<div style="float:left; margin:5px 2px 5px 0;">
<input style="width:29px; height:23px; margin:0; padding:0;" name="" type="button" value="§" />
</div>

<div style="clear:both;"></div>
</div>

2Victor.

Не канает. все равно кнопочки сваливаются друг под друга если места им мало.

Link to comment
Share on other sites

  • 0

вроде ничего сложного нет:

<div style="height:33px; width:100%; white-space:nowrap; overflow:hidden;">

<div style="display:inline; margin:5px 2px 5px 5px;">
<input style="width:100px; margin:0; padding:0;" name="" type="text" />
</div>

<div style="display:inline; margin:5px 2px 5px 0;">
<input style="width:29px; height:23px; margin:0; padding:0;" name="" type="button" value="§" />
</div>

<div style="display:inline; margin:5px 2px 5px 0;">
<input style="width:29px; height:23px; margin:0; padding:0;" name="" type="button" value="§" />
</div>

<div style="clear:both;"></div>
</div>

Link to comment
Share on other sites

  • 0
2Searcher,

inline и nowrap помогли. Спасибо :-)

Видима раньше не в туда вставлял...

Только margin перестали работать. Но это надеюсь поправимо.

Нет, не поправимо. Только IE6 может применить вертикалные паддинги/маргины к инлайн элементу, если элементу дать zoom:1.

Edited by Justnewone
Link to comment
Share on other sites

  • 0

Паддинги для inline работают, но не раздвигают границ родительского элемента. Для родителя тогда надо ставить свои паддинги для компенсации.

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

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