2009-06-29 5 views
10

이것은 내 동료 중 하나가 멋진 그래픽을 디자인 한 "장바구니에 추가"컨트롤입니다. 분명히 간단한 하이퍼 링크가하지 않을 게시물 요청을 생성해야합니다.<button> 대 <input type = "image">

아마존은 이미지 입력을 사용하여 그것을 달성합니다. 그러나

<button type="submit"><img src="atb.png" alt="Add to Basket" /></button> 

(와 모양을 제어하는 ​​CSS를 사용하여) 대

<input type="image" src="atb.png" alt="Add to Basket" /> 

의 장점과 단점은 무엇인가?

이 내가이 질문에 귀결 같아요

  • 그래픽 및 비 그래픽 모든 브라우저를 수행, 이미지 입력은 키보드 액세스 할 수 있도록 그들의 의무에 성공? (또는 키보드가없는 장치의 경우 입력 수단이 무엇이든간에 액세스 할 수있게 만드십시오.)

  • <button>을 지원하지 않는 브라우저는 있습니까?

  • 각기 다른 장점과 단점이 있습니까?

  • 자신의 장점을 가진 다른 가능한 접근 방법이 있습니까? (잊어 버리고 일반 전송 만 사용하는 것 외에)?

답변

2

이들 중 이어야합니다. 스타일을 지정하기 위해 향후 버튼 태그를 변경하면 버튼 태그가 더욱 유연 해집니다.

그러나 : IE에는 버튼 또는 입력 값이 innerHTML과 같게 설정되는 버그/기능이 있습니다. 이는 서버 측 코드가 특정 값을 필요로 할 경우 문제를 일으킬 수 있습니다.

추가 스타일링 유연성이 <button> 인 경우가 아니면 <input type="image">으로 이동하여 IE의 단점을 처리 할 필요가 없습니다.

+0

사이드 노트 : IE8 표준 모드에서 IE 버그가 수정되었습니다. – scunliffe

+0

예, IE 버그도 발견했습니다. 우리는 양식 당 단 하나의 버튼 만 사용하게 될 수도 있습니다. IWC는 문제가되지 않습니다. 하지만 서버 쪽 코드가 감지 할 수 있도록 innerHTML에 무언가를 던질 가능성을 알 수 있습니다. 그러나''? 이것은 오타입니까, 아니면 뭔가 빠졌습니까? – Stewart

+0

예, 오타였습니다. 죄송합니다. 결정된. – edeverett

0

입력 유형 = "이미지"는 사용 불가 속성을 지원하고 브라우저는 이미지를 회색으로 표시합니다. Type = Button을 사용하면 대체 회색 이미지를 제공해야합니다.

관련 문제