HTML CSS шпаргалка Рецепты, статьи, советы, приемы html css

Запрет обтекания float элементов

Пусть нам надо заверстать такой блок:

Запрет обтекания float элементов

Т.е. слева должна быть картинка, а справа колонкой идет текст, который не должен залезать под картинку. Т.е. нужно запретить обтекание текстом картинки. Делается это, как и всё в html css, очень легко =)

Нужно картинке оставить float:left, а тексту справа задать overflow:hidden с zoom:1 для ИЕ, или взять любой другой параметр, который включает haslayout.

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Зарпет обтекания float элементов</title>
<style type="text/css">
.news{
	width:700px;
}
.news img{
	float:left;
	margin:0 10px 10px 0;
}
.news p{
	overflow:hidden;
	zoom:1;
}
</style>
</head>
<body>
<div class="news">
	<a href="#"><img src="pic.jpg" alt="" /></a>
	<h1><a href="#">Запрет обтекания float элементов</a></h1>
	<p>По моему, естественно, что после долгих лет мучений, сомнений и борьбы, приходит Большой Обтекание float. Задайтесь вопросом: а откуда я знаю, что это тот самый Обтекание float? Идея, конечно, хорошая, только вряд ли теперь заинтересуешь инетчиков Обтекание float. Знаете, сколько Обтекание float в интернете? Нужно четкое определение Обтекание float, тогда Обтекание float будет интересен другим. И только Обтекание float движет этим миром. Обтекание float расширяет наши рамки и позволяет испытать доселе неизведанные эмоции. Большой Обтекание float в кармане не утаишь. Наш сосед – воспитанный и спокойный человек. За всю жизнь никому плохого слова не сказал и мухи не обидел. Но недавно берет он лом, да как фиганет в крышу новенькой соседской тачки со всей дури. Говорят, что Обтекание float виноват. Вы сейчас просто так стучите пальцами по клавиатуре или «Обтекание float» – это что-то значит? А что вы думаете о предопределении? Почему-то обычно считается, что есть лишь два варианта: либо есть свобода выбора, либо Обтекание float. Но на самом деле, мне кажется, имеет место и то и другое, причем – одновременно. Надеюсь, вам интересно со мной разговаривать. Ведь я хорошо учился в школе, и в то время даже не думал о Обтекание float. При общении с Обтекание float человеку часто кажется, что он шагнул за некую завесу, открыл неизвестную сторону обыденности. На моей практике это были довольно забавные «приходы»: ощущение «плоскости« мира (окружающее казалось прорендеренным задником, как в квестовых играх), замедление или ускорение окружающего мира, ощущение «плавания в воздухе». А вот «Taolf еинакетбо» – это Обтекание float наоборот.	</p>
</div>
</body>
</html>

Метки:

Комментарии (9) на “Запрет обтекания float элементов”

  • sad:

    Статья на Хабре про haslayout к сожалению удалена. Можете ещё что-то посоветовать на эту тему?

  • Костя:

    Если только ссылку на англ., которая на хабре, другие надо поискать. А так вкратце, если в ие какой-то непонятный глюк, включаешь haslayout, если и это не помогло, то переверстываешь. В принципе больше можно и не знать.

  • Илья:

    Можно в конце каждого float-элемента ставить брэйк с классом «clear»

    соответственно добавить в стили:
    .clear {clear:both;font-size:0%;line-height:0%;height:0;}

    В данном случае это будет выглядеть так:


    Запрет обтекания float элементов

    Это конечно «костыли», но во всяком случае вопрос решает.

  • Илья:

    сорри код не отображает…

    Можно в конце каждого float-элемента ставить брэйк с классом «clear»
    <br class=»clear»/>
    соответственно добавить в стили:
    .clear {clear:both;font-size:0%;line-height:0%;height:0;}

    В данном случае это будет выглядеть так:

    <a href=»#»><img src=»pic.jpg» alt=»" /></a><br class=»clear»/>
    <h1><a href=»#»>Запрет обтекания float элементов</a></h1>

    Это конечно «костыли», но во всяком случае вопрос решает.

  • что-то всё усложнено неоправданно. clear!

  • Виктор:

    Зачем так утруждать?)) создаем ещё один див где текст будет и пишем margin-left: сколько нам нужно, расстояние от картинки вот и всё)

  • Костя:

    Виктор, это просто еще один способ. Также он хорош, что картинку можно ставить любой ширины и не подгонять margin-left в зависимости от ширины картинки. Также, если картинки не будет, то текст встанет «вровень со стенкой» =) без левого отступа.

  • уже 4 статьи на сайте сохранил, имхо вышеизложенное юзабельно, полезно.

  • Antony:

    «По моему, естественно,то после долгих лет мучений, сомнений и борьбы, приходит Большой Обтекание float…» — пока читал чуть не упал со стула)))

Оставить комментарий

Для вставки кода используйте <code> ... </code>.



Самые комментируемые

Облако тегов

Нет тегов найденных по заданным критериям.

Опрос