2017-05-03 1 views
0

에 나는 labelinput 필드의 바로 위에 있도록 그것을 만들려고 노력하고, 나는 아이콘이 다음에 바로 표시 할 input 필드는 말했다.디스플레이 아이콘 다음 입력 필드

@import url("//fonts.googleapis.com/icon?family=Material+Icons"); 
 

 
input, 
 
label { 
 
    display: block; 
 
}
<div> 
 
    <label for="username">Username</label> 
 
    <input id="username" placeholder="Username" class=""> 
 
    <i class="material-icons">accessibility</i> 
 
</div>

나는 위의 CSS를 사용하여 input 위의 label를 얻을 수 있습니다. 그러나 입력란 옆에 icon을 얻으려면 어떻게해야합니까?

JS Fiddle

+0

당신은 단지 입력 필드 후 필요하십니까 인라인 블록으로 표시해야한다 ?? –

+0

예, 아이콘은 입력 필드의 오른쪽 *에 있어야합니다 (jsfiddle에있는 것처럼 아래가 아님). – MonkeyOnARock

+0

가장 간단한 변경은 CSS 규칙에서 _input_을 제거하는 것입니다 :'input, label { display : block; }'라벨이됩니다 { display : block; }' –

답변

1

@import url("//fonts.googleapis.com/icon?family=Material+Icons"); 
 

 
label { 
 
    display: block; 
 
} 
 

 
input{ 
 
    display:inline; 
 
    }
<div> 
 
    <label for="username">Username</label> 
 
    <input id="username" 
 
     placeholder="Username" 
 
     class=""> 
 
    <i class="material-icons">accessibility</i> 
 
</div>

+1

당신은'input {display : 인라인; }'인라인은''의 기본값이므로 –

1

입력은

label { 
    display: block; 
} 

input { 
    display: inline-block; 
} 

https://jsfiddle.net/51zrg6ms/2/

+1

아니요,'inline-block '일 필요는 없습니다 -'inline'은 잘 작동하고'input' 요소의 기본 표시 속성입니다. –

+0

가능합니다. 하지만 개인적으로는 더 완벽한 위치 지정을 위해 여백과 패딩을 나중에 추가하려는 경우 인라인 블록을 선호합니다. –