2011-03-15 4 views
6

때로는 현재 프로젝트에서 HTML 만 가지고 있습니다. 글쎄, 내 말은, 분명히 그것의 부모 요소로 묶여 있지만 .. 그냥 코드 예제를 사용하자.태그가없는 HTML은 괜찮습니까?

<input name="search" type="text" /> 
<input value="Search" type="submit" /> | 
<a href="test.php">Test</a> 

이 경우 "|"는 그 자체입니다. 이 시점에서 어떤 사람들은 세로 구분선 CSS 클래스를 사용한다고 말할 수도 있지만 이것이 유일한 경우는 아닙니다. 때로는 수업에 싸여 있지 않은 "by"같은 것을 가질 수도 있습니다. 이거 괜찮아? 클래스가 비어 있고 스타일을 필요로하지 않더라도 모든 것을 CSS 클래스로 래핑해야합니까? 언젠가는 스타일링이 필요한 경우를 대비해 미래를 보장한다고 생각하지만, 지금은 단지 CSS가 부풀려 있습니다.

답변

10

괜찮습니다. HTML은 단지 태그입니다. 태그 안의 모든 것을 감쌀 필요는 없습니다.

2

괜찮습니다. 텍스트를 보관하기 위해 여분의 요소를 추가 할 필요가 없습니다. 유효성 검사가 정말 걱정된다면 기술적으로 인라인 요소 나 텍스트 노드를 포함 할 수없는 몇 가지 요소가 있지만 실제로 문제는 아닙니다.

2

그렇게하는 것은 문제가되지 않습니다. 마크 업의 일부를 감싸는 모든 마크 업 (또는 심지어 마크 업) 이후에는 항상 마크 업이 있으므로 CSS를 적용 할 수 있습니다.

7

이 경우 "|"는 그 자체입니다.

다른 고려 사항과는 별도로 ASCII 아트를 사용하지 마십시오. 화면 판독기에 이상한 영향을줍니다. 테두리를 원하면 CSS 테두리를 사용하십시오.

때로는 클래스에 싸여 있지 않은 "by"과 같은 것이있을 수 있습니다.

"a class"의 콘텐츠를 래핑 할 수 없습니다. 요소의 내용을 래핑 할 수 있으며 클래스에 해당 요소를 할당 한 다음 CSS 클래스 선택기를 사용하여 대상을 지정할 수 있습니다.

적절한 의미를 추가하는 요소가있는 경우이를 사용해야합니다.

스타일을 적용하려면 가장 의미 론적으로 적절한 요소를 추가해야합니다 (적절하지 않은 요소가있는 경우 일반 div 또는 span으로 폴백). 그런 다음 해당 요소와 일치하는 규칙 집합을 작성합니다.

추가 할 의미가 없으며 적용 할 스타일이 없으면 신경 쓰지 마십시오. 그것은 단지 부 풀릴뿐입니다.

+0

+1 좋은 교습을 위해서. –

2

어떤 프로젝트와 마찬가지로 더 많은 레이어를 추가 할수록 느리게 생성됩니다.

HTML/CSS의 경우 대부분의 스타일링은 CSS가 현명하게 코딩되고 최적화되고 압축 된 경우 훨씬 더 많은 처리/오버 헤드를 추가하지 않습니다. 그러나 더 오래 걸리면 처리하는 데 더 많은 시간이 걸립니다.

IMHO, 내가 사업부, 범위 등을위한 유효한 필요가없는이 시간이 지남에 추가하기 때문에, 그 공간과 밀리 초를 보관할 것을 권장합니다. 모든 유효한 HTML 태그는 CSS 태그이기도합니다. 예를 들어 CSS로 모든 H1 태그를 쉽게 스타일링 할 수 있습니다 (div/span에서 래핑하거나 ID/클래스 속성을 추가 할 수 있음).