문제

하이퍼 링크가 아닌 버튼에 부작용이있는 상호 작용을함으로써 HTML / CSS 개발자의 삶을 어렵게 만들었습니다.

예를 들어 쇼핑 사이트의 "투명 바구니"를 링크에서 버튼으로 변경했습니다. 부작용이있는 모든 동작은 하이퍼 링크가 아닌 버튼이어야한다는 전제로. (거미 또는 로봇 조차도이 시점에 도달하지 못할 것입니다) 이것은 휴식과 어떤 관련이 있습니까?

가장 좋은 대답은 내가 HTML/CSS 직원들에게 일을 어렵게 만드는 이유에 대해 사용할 수있는 좋은 이유가있을 것입니다. 이유?

참고 : 나는 퍼팅에 반대하지 않습니다 Ajax 하이퍼 링크 또는 선택 변화 이벤트에서 상태가 완성 된 부작용이있는 기능.

건배. 머레이.

도움이 되었습니까?

해결책

나는 당신이 옳은 일을했다고 생각하지만 그것을 정당화하는 것은 아마도 "REST"의 영역 밖에있을 것입니다.

이 링크가 진정으로 정당하다면 <a> 브라우저가 GET 요청을 클릭 한 다음 클릭 한 다음 HTTP 사양에 따라 안전하고 IDEMPONTENT에 따라 GET가되어야하기 때문에 부작용이 없어야합니다. 링크 등에 따라 거미에 대한 이전 의견을 참조하십시오.

이제 "링크"가 JavaScript를 사용하여 클릭 할 때 서버에 게시물을 실제로 수행하거나 그와 같은 트릭을 수행 한 경우 HTTP의 관점에서 A-OK입니다. 아마도 가치보다 더 많은 일이지만 편안합니다.

그러나 고려해야 할 사용자 인터페이스 설계도 있습니다. CSS 및 JavaScript가없는 기본 HTML에서는 항상 링크가 GET이므로 사용자는 1994 년부터 교육을 받았습니다. 외모 하이퍼 링크처럼 안전하고 Idemotent. 다른 일을함으로써 디자이너는 최소한의 놀라운 원칙을 위반합니다. 이것은 Jacob Nielsen이 당신을 백업 할 것 같습니다.

다른 팁

이것은 실제로 휴식과 관련이 없지만이 간단한 규칙을 따르려고 노력합니다.

Hyperlinks are for navigation.
Buttons are for interaction.

"상태"작업이 링크 또는 버튼인지는 실제로 중요하지 않습니다. 삭제/추가 등의 링크를 가질 수 있습니다. 일관성이 중요합니다. 따라서 이러한 작업이 버튼이 되려면 괜찮습니다. 재능있는 CSS 사람들이 링크를 버튼처럼 보이게 할 수 있다고 생각합니다. HTML 버튼이 전혀 필요하지 않을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top