HTML의 블록 요소와 인라인 요소 : 왜 차이점이 있습니까?


15

블록과 인라인 요소의 차이점은 항상 이상하게 보였습니다. 전체 차이점은 블록 요소가 전체 너비를 차지하므로 요소 전후에 줄 바꿈이 적용되고 인라인 요소는 내용만큼만 차지한다는 것입니다. 왜 사용자 정의 높이 / 너비를 적용하고 사용할 수있는 인라인 요소 인 한 가지 유형의 요소 만 가지고 있지 않습니까? 줄 바꿈을 원하십니까? 를 삽입 <br />하거나 CSS에 해당 동작에 대한 특수 태그를 추가하십시오. 지금은 방법으로 문제를 해결하는 것을 보지 못합니다. 대신 내 의견으로는 디자이너가 결정 해야하는 속성 만 강요합니다.

왜 두 가지 유형입니까?


이 질문에서 가장 좋아하는 부분은 인라인 스타일을 사용 하여 마지막 줄을 첫 번째 단락과 구분 <br/>하는 <p>태그입니다. 아마도 구현의 차이점보다는 시각적 의도의 광대 한 차이점을 살펴보아야 할 것입니다.
riwalk

1
100 %는 블록 요소가 유용하고 제안 된 솔루션에 동의하지 않는다고 믿지만 여전히 큰 문제입니다.
Nicole

답변:


13

당신은 말합니다 :

줄 바꿈을 원하십니까? 를 삽입 <br />하거나 CSS에 해당 동작에 대한 특수 태그를 추가하십시오. 지금은 방법으로 문제를 해결하는 것을 보지 못합니다. 대신 내 의견으로는 디자이너가 결정 해야하는 속성 만 강요합니다.

당신은 올바른 길을 가고 있습니다- 스타일은 디자이너에 의해 결정되어야합니다.

그러나 다른 방법으로 문제가 있습니다. <br/>태그를 삽입하는 것은 실제로 마크 업 문서 내부에 "디자이너가 결정해야하는 속성을 강제로 적용"하는 옵션입니다. 일단 마크 업 문서 <br/>가 있으면 거기에 있습니다. 일부 까다로운 / 해킹 CSS만으로도 그 효과를 제거 할 수 있습니다.

elements반면에 인라인 / 블록 은 일반적인 사용 사례에 편리한 기본값으로 스타일이 지정된 요소입니다. 시각적 특성 자체와 CSS 디자이너에 의해 즉시 변경 될 수 있습니다 display:inline또는 display:block.

요즘 내비게이션의 공통 요소를 예로 들어 보자 <li>. 이들은 기본적으로 block요소이지만 디자이너는 float인라인으로 보이 도록 만들 것입니다 ( block전체 라인을 차지하는 것보다 더 특별한 속성을 가지고 있지만 다른 날의 대화입니다).


3

대부분의 요소에는 표준 형식이 있습니다 ...이 형식이 디자이너의 결정이기도하고 제거해야한다고 질문을 확장 할 수 있습니다. 나는 항상 시작 지점이라고 생각하고 필요한 경우 서식을 제거했습니다 (종종 그렇지 않은 경우). 그러나 결국 자연스런 것들이 있습니다. 예를 들어 단락이있는 경우 단락의 특성 때문에 해당 단락이 블록 요소가 될 것으로 예상합니다. 요소에 블록 또는 인라인과 같은 기본 설정이 있는지 여부에 관계 없이이 옵션을 지정하는 기능을 원할 것입니다. 내가 이것이 말하는 이유는 IMO가 이런 식으로 물건을 깨는 것보다<br />HTML에서. 같은 일을합니까? 예. 그러나 최근 HTML이 발전함에 따라 CSS에서 서식이 지정되는 한 HTML에 더 적은 의미를 부여하는 시맨틱 언어에 더 많은 노력을 기울였습니다. <br />일반적 단락 또는 다른 문장 구조 함유 개행 참조되는 수단 개행. 결국 그것은 중요하지 않지만 개인적으로 블록 및 인라인 구별 기능을 원하므로 적어도 CSS 측에서 제거하지 않기를 바랍니다.


2

이것은 문장과 문장 사이에 실질적인 차이가 없다고 말하는 것과 같습니다. 단락 은 아이디어 그룹 을 구분합니다 . 일반적으로 한 문장은 단일 아이디어에 대한 것입니다.

마크 업은 의미가 아닌 표시에 관한 것입니다. 실제로 디자이너는 기본적으로 블록 스타일을 기본으로하는 요소를 인라인으로 취급하거나 그 반대로 처리 할 수 ​​있습니다.


2

에서 LaTeX의 가로 모드와 세로 모드 : (수학 모드를 포함하지 않음) 두 가지 모드가있다. 요소 (문자)는 단락에서 "가로"누적되는 작은 상자입니다. 그런 다음이 큰 상자는 세로로 쌓입니다. 이것은 (X) HTML : 인라인 및 블록과 유사합니다.


0

이전 버전과의 호환성 문제인 것 같습니다. 인라인 요소는 아마도 HTML 표준에 나중에 추가되었을 것이므로 1992 년에 작성된 웹 페이지를 2011 년에도 볼 수 있도록 여전히 19 년 된 웹 페이지가있는 것처럼 지원됩니다 ...!


-1

블록과 인라인의 표시 모드가 너무 다르기 때문에 마크 업 수준에서 구별 할 가치가 있다고 생각합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.