Margin-top не будет перемещать отдельные элементы

#html #css #margin

#HTML #css #поле

Вопрос:

Я пытаюсь создать поле для комментариев горизонтальным с полем имени, потому что текстовое поле было закреплено сверху. Когда я попытался применить margin-top к текстовой области и форме, это переместило поле имени и весь профиль вместе с ним. Есть ли способ переместить текстовую область вниз, не затрагивая ничего другого. Вот мой код:

 body {
	margin: 0;
}
p.name {
	font-family: "Roboto";
	margin-top: 90px;
	margin-left: 50px;
	margin-bottom: 0;
	border: 1px solid black;
	display: inline-block;
	padding: 20px 70px;
	font-size: 25px;
}
div.info {
	margin-left: 50px;
	border: 1px solid black;
	padding: 20px 13.5px 20px;
	border-top: none;
	display: inline-block;
	margin-bottom: 0;
}
div.date {
	margin-left: 50px;
	border: 1px solid black;
	border-top: none;
	display: inline-block;
	padding: 0px 17px 0px;
	text-align: center;
}
form {
	display: inline-block;
	margin-left: 100px;
}
textarea {
  width: 300px;
  height: 150px;
  display: inline-block;
  padding: 12px 20px;
  box-sizing: border-box;
  border: 2px solid #ccc;
  border-radius: 4px;
  background-color: #f8f8f8;
  font-size: 16px;
  resize: none;
}  
 <!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="profile.css">
<link href='https://fonts.googleapis.com/css?family=Roboto' rel='stylesheet'>
</head>
<body>
<p class="name">henWrek</p>
<form>
<label for="fname">Profile Comments:</label>
<br>
<textarea>Enter your comment here...</textarea>
</form>
<br>
<div class="info">
<img src="default.jpg" height="200" width="210">
</div>
<br>
<div class="date">
<p>Joined: 11/1/2018</p>
<p>Last Online: 11/9/2018 3:21PM</p>
<p>Post Count: 2</p>
</div>
</body>
</html>  

Ответ №1:

попробуйте, например, margin-top с отрицательным значением: margin-top: -2px;

Ответ №2:

Другой вариант — указать позицию тегу label, и у этого тега будет относительное положение, и вы можете изменить верх и право для перемещения, когда захотите.

 body {
	margin: 0;
}
p.name {
	font-family: "Roboto";
	margin-top: 90px;
	margin-left: 50px;
	margin-bottom: 0;
	border: 1px solid black;
	display: inline-block;
	padding: 20px 70px;
	font-size: 25px;
}
  
div.info {
	margin-left: 50px;
	border: 1px solid black;
	padding: 20px 13.5px 20px;
	border-top: none;
	display: inline-block;
	margin-bottom: 0;
}
label{
    position:relative;
    top:50px;
    right:100px;
}
div.date {
	margin-left: 50px;
	border: 1px solid black;
	border-top: none;
	display: inline-block;
	padding: 0px 17px 0px;
	text-align: center;
}
form {
	display: inline-block;
	margin-left: 100px;
}
textarea {
  width: 300px;
  height: 150px;
  display: inline-block;
  padding: 12px 20px;
  box-sizing: border-box;
  border: 2px solid #ccc;
  border-radius: 4px;
  background-color: #f8f8f8;
  font-size: 16px;
  resize: none;
}  
 <!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="profile.css">
<link href='https://fonts.googleapis.com/css?family=Roboto' rel='stylesheet'>
</head>
<body>
<p class="name">henWrek</p>
<form>
<label class="label-prueba" for="fname"> Profile <br> Comments:</label>
<br>
<textarea>Enter your comment here...</textarea>
</form>
<br>
<div class="info">
<img src="default.jpg" height="200" width="210">
</div>
<br>
<div class="date">
<p>Joined: 11/1/2018</p>
<p>Last Online: 11/9/2018 3:21PM</p>
<p>Post Count: 2</p>
</div>
</body>
</html>  

Ответ №3:

Я просмотрел ваш код и обнаружил вашу проблему, мое предложение, пожалуйста, добавить два свойства в ваш .textarea класс, и это position:relative и top в соответствии с вашими требованиями.

 textarea{
   position:relative;
   top:100px;
}
  

Комментарии:

1. Я использовал это вместо верхнего комментария, но оба сработали!