나쁜 연습으로 간주되는 'Right'와 같은 클래스 이름을 사용합니까?
문제
"왼쪽", "오른쪽", "클리어"및 XHTML과 같은 클래스 이름이있는 경우
<a href="index.php" class="right continueLink">Continue</a>
CSS와 같은
.right {
float: right;
}
나는 그것이 의미 론적 이름이 아니라는 것을 알고 있지만 때로는 상황이 훨씬 쉬워집니다.
어쨌든, 당신의 생각은 무엇입니까?
해결책
나는 그것이 아주 좋은 생각이라고 생각하지 않습니다. 이제 귀하 (또는 미래 관리자)가 웹 사이트 레이아웃을 변경하면 변경해야합니다. .right
에게 {float:left;}
(분명히 나쁜 생각) 모든 HTML 파일을 거치고 변경하십시오. right
에게 left
.
왜 그 특정 링크가 오른쪽으로 떠 오기를 원하는가? .continueLink
그렇지 않습니까? 해당 질문에 대한 답을 사용하여 해당 링크에 대한보다 설명적인 클래스 이름을 선택하십시오.
다른 팁
CSS는 The의 발표에 관한 것입니다 구조 HTML 페이지의.
이 클래스는 문서의 구조 ( '기사', '엑스트라 링크', '용어집', '소개', '결론', ...)을 나타내야한다는 의미입니다.
a에 연결된 클래스를 피해야합니다 물리적 인 표현 ( '왼쪽', '오른쪽', '각주', '사이드노테스', ...), 선 가든 따라서 명확하게 설명하면, DIV를 매우 다른 방식으로 배치하기로 결정할 수 있습니다.
순수 주의자들은 그렇게하지 말고 실용 주의자들은 괜찮다고 말할 것입니다. 그러나 순수 주의자들은 정의 할 것입니다 .right
~처럼 float: left
?
혼란을 피하기 위해 CSS 사양의 값과 동일한 이름을 피하는 것이 좋습니다. 특히 여러 개발자가 동일한 응용 프로그램에서 작업하는 상황에서.
그 외에는 아무런 문제가 없습니다. 나는 다음과 같은 오른쪽 또는 왼쪽 이름을 자격이 있습니다 : Menuleft, Menuright 등.
순수 주의자이기 때문에 나는 그것을하지 않는다고 말합니다. 앞서 언급 한 이유로.
실용 주의자이기 때문에 나는 CSS없이 순수한 HTML 변경 또는 HTML이없는 순수한 CSS와 관련된 웹 사이트 재 작업을 본 적이 없다고 말하고 싶었습니다. 따라서 실제로 다른 사람이 페이지를 변경해야한다면, 내 월급이 HTML과 CSS를 모두 변경할 것이라고 확신합니다.
위의 내용은 현실이라도 척추 주의자들이 종종 무시하는 경향이있는 것입니다. 그러나 결론; 아니요, "오른쪽"과 같은 클래스 이름을 사용하지 마십시오. :-)
. 오른쪽과 그와 같은 다른 클래스는 확실히 쓰기가 빠르게 쓰기로 만듭니다. float:right
규칙이 첨부되었지만이 방법은 장점보다 더 많은 단점이 있다고 생각합니다.
종종 싱글이있는 클래스 스타일 float:right;
그것은 무언가가 부족할 것입니다. 당신의 예제는 다른 클래스 규칙에 display:block
"A"태그는 블록 레벨 요소가 아니기 때문에. 또한 부동 원소는 높이가 부착 될 필요가없는 것보다 더 자주 더 자주. 이는 예제의 코드가 말하는 것을 수행하기 위해 추가 코드가 필요하며 CSS를 변경해야 할 때 두 곳에서 검색해야 함을 의미합니다.
나는 고유 한 ID가있는 다른 div-tag로 페이지를 나누어서 HTML을 스타일링 한 다음 이와 같은 상속에 의해 이러한 div의 요소 스타일링 요소를 스타일링하는 경향이 있습니다.
div#sidebar { float:right; width:200px; }
div#sidebar ul { list-style-type:none; }
이로 인해 CSS 파일을 분할 할 수 있으므로 특정 태그 스타일의 CSS 코드를 쉽게 찾을 수 있지만, 오른쪽 및 기타 클래스를 소개하면 규칙을 CSS 파일의 다른 영역으로 분산시키기 시작합니다. , 사이트를 유지하기가 더 어려워집니다.
매우 일반적인 수업을 가지고 있다는 아이디어는 스타일 시트에서 몇 가지 규칙을 변경하여 사이트의 전체 레이아웃을 변경할 수있게하려는 소원에서 태어 났다고 생각하지만 8 년간의 웹 사이트 개발에서 30 세 이상, 내 벨트 아래의 다른 사이트는 웹 사이트의 레이아웃을 한 번 변경하지 않고 HTML을 재사용했습니다.
내가 수많은 시간을 한 것은 설계의 작은 변화 나 새로운 브라우저의 도입으로 인해 페이지 영역을 작은 조정하는 것입니다. 그래서 저는 CSS를 깔끔한 덩어리로 나누어 원하는 규칙을 쉽게 찾을 수있게 해주 며 스타일 시트를 달성하기 위해 다른 장소에 코드를 넣지 않도록합니다.
Jesper Hauge를 고려하십시오
예, 의미 적으로 말하면 잘못되었지만 예를 들어, 본체 사본 블록 내에서 이미지를 배치 할 때가 있고 클래스를 "오른쪽"으로 줄 것입니다.
아마도 "Alt"는 더 적합한 클래스 이름 일 것입니다.