Как я могу получить эти ссылки и изображения для отображения в строке

0

Это кажется таким простым, но я, по-видимому, терпит неудачу. Поэтому у меня есть 3 изображения, и у каждого изображения есть ссылка над ним. Я хочу, чтобы они появлялись inline, и я не могу использовать таблицу, поэтому я попробовал divs, но они появляются один за другим, а не inline. примечание: ширина моей страницы составляет 1000 пикселей

   <!-- First Div with link and image-->
    <div style="float:left;width:33%">
       <a href="/bartop">BarTop Epoxy</a>
       <img style="margin: 15px;"src="image1" width="300" height="315">
    </div>
    <!-- Second Div with link and image--> 
   <div style="float:left;width:33%">
       <a href="/counter top"> Countertop</a>
       <img style="margin: 15px;" src="image2" width="300" height="315">
    </div>
     <!--third Div with link and image-->
    <div style="float:left;width:33%">
       <a href="/flooring">Flooring</a>
       <img style="margin: 15px;" src="image3" width="300" height="315">
    </div>
  • 0
    Пожалуйста, укажите, какой браузер вы используете, приведенный выше код должен работать. Или добавьте контейнер div и связанный css
  • 0
    @Phlume Последний элемент не нужен
Показать ещё 1 комментарий
Теги:

2 ответа

0
Лучший ответ

Вам нужно проверить две вещи:

  1. Что DIVs не очищают - они должны иметь clear:none объявлен или не унаследован.
  2. В вашем контейнере достаточно места для всех этих предметов. Ваши поплавки содержат элементы шириной 300 пикселей с дополнительными 30 пикселями поля. Является ли ваш контейнер шириной 990 пикселей? Или даже шириной 660 пикселей? Поплавки скатываются вниз под предыдущим поплавком, если для них недостаточно места.
  • 0
    Это не было проблемой, но это был хороший момент, что мне нужно учитывать дополнительные 30px
  • 0
    На самом деле, с объявленным процентом, это не произойдет в большинстве браузеров в любом случае. Я бы проверил наследование (убедитесь, что нет другого правила, переопределяющего float или очищающего его).
0

По умолчанию divs имеют display: block; свойство, что означает, что они не будут отображаться в одной строке.

Вы можете исправить это, сделав float дисплея, как и вы, но вы также должны добавить стилизацию clear: none; чтобы плавающие элементы могли находиться рядом друг с другом.

Кроме того, вы можете использовать display: inline-block; , который может работать лучше для того, что вы пытаетесь сделать, и здесь jsfiddle с этим вариантом.

  • 0
    «По умолчанию у div есть свойство display: block; это означает, что они будут отображаться рядом». Разве вы не имеете в виду одно за другим?
  • 0
    Да, я оговорился. Ред.
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню