2013-04-19 2 views
0

Я использую HTML5 и хотел бы поместить изображение слева от страницы и форму справа от изображения. Это будет относительное позиционирование, поскольку изображение может быть любого размера. Является ли CSS лучшим способом для этого или есть ли лучшие способы использования HTML?Лучший способ разместить форму, относящуюся к изображению

Я попробовал следующее

<div class='container'> 
    <div class='left'> 
     <form action="javascript:ShowLoadedImage(document.getElementById('image-field').value);"> 
      <input type="file" accept="image/*" id="image-field" name="image" onchange="this.form.submit()"> 
     </form> 
    </div> 
    <div class='right'> 
     <form> 
      First name: <input type="text" name="firstname"><br> 
      Last name: <input type="text" name="lastname">   
     </form> 
    </div> 
    <div class='clear'></div> 
</div> 

но получил изображение ниже форму. На самом деле у меня есть кнопка, начиная с последующего кода за пределами блока, между ними.

+1

https://developer.mozilla.org/en-US/docs/CSS/float – j08691

+0

Возможно, другой способ сделать это - использовать таблицу как в строке таблицы, так и в разных столбцах. Кроме того, можно использовать JavaScript, но некоторые браузеры отключены JavaScript. – OtagoHarbour

+0

Таблицы должны использоваться для табличных данных, а не для макета. – j08691

ответ

1

Я бы с основной HTML/CSS:

HTML:

<div class='container'> 
    <div class='left'> 
     <form> 
      <!-- your form --> 
     </form> 
    </div> 
    <div class='right'> 
     <!-- your image --> 
    </div> 
    <div class='clear'></div> 
</div> 

CSS:

.container { 
    width: 300px; 
} 
.left { 
    float:left; 
} 
.right { 
    float:right; 
} 
.clear { 
    clear:both; 
} 

Fiddle здесь: http://jsfiddle.net/SUEHs/

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

+0

Я редактировал свой первоначальный вопрос, чтобы показать, что я пробовал. К сожалению, он не позиционировал элементы должным образом. Он помещает изображение под форму. Спасибо, Питер. – OtagoHarbour

+0

@OtagoHarbour Убедитесь, что 'left' и' right' divs вписываются в контейнер. Например, если ваш контейнер имеет ширину 900 пикселей, вы можете попытаться установить их по 400 пикселей каждый: '.left, .right {width: 400px;}' –

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