2009-04-27 2 views
0

두 개의 필드가 시각적으로 서로 겹치는 페이지가 있지만 두 개의 다른 양식이 있습니다.HTML 양식 필드 (type = text)의 기본 크기는 무엇입니까?

Firefox에서는 같은 너비로 표시됩니다. IE (IE6, IE7, IE8)에서는 다양한 너비로 나타납니다.

다음은 샘플이야, 나는 문제가 "크기 ="부족하면 (크기없이)이 작업을 수행 할 때

<input id="fieldid" type="text" name="fieldname" value="" /> 

, 크기가 무슨 생각?

나는 HTML3HTML4에 대한 몇 가지 문서를 발견 ...

하지만 기본값이 있어야한다 만약에 명확한 아이디어를 얻을 수 없었다.

파이어 폭스 3.0에서 파이어 버그로 게임을하다 보니 마치 게코에서 20 개처럼 보입니다.

IE에서는 이해할 수없는 다른 조건에 따라 IE가 가변적으로 보입니다.

UPDATE :

내가 더 두 양식의 특성을 비교하기 위해 노력하지만, 변수를 분리 할 수 ​​없습니다 않았다. 나는 파일을 해킹하여 양쪽 모두 set size = 20으로 사용하도록 만들었지 만 너비는 여전히 다르다 (이전보다 작음).

+0

업데이트 :이 질문의 소스 내가 IE에서, 크기 설정없이 두 개의 필드가 있고, 서로 다른 형태로 나타나고 있다고했다 다른 너비. 최근에 그 페이지에서 몇 가지 변경 사항을 해킹했고 근본 원인은 IE가 type = "text"및 "type = password"에 대해 다른 기본 너비를 갖는 것으로 나타났습니다. 심지어 같은 형식으로, 심지어 w/no CSS. – benc

답변

3

IE6과 7에서도 20이 표시됩니다. 테스트 조건이나 결과에 대해 알지 못하면 왜 "가변적 인"기본 크기가 발생하는지 말할 수 없습니다.

"크기"속성은 항상 스타일로 설정된 글꼴 크기를 기준으로 렌더링됩니다. 예 : "크기"는 문자 너비에 비례하기 때문에 크기 10 글꼴의 "20"은 크기 20 글꼴의 "20"과 다릅니다. 하드/스태틱 너비를 원한다면 width css 속성을 사용하십시오.

+0

값이 20인지 어떻게 확인할 수 있습니까? Javascript를 통해 DOM을 확인 했습니까? – benc

+0

@benc 렌더링 된 텍스트 상자를 명시 적으로 20으로 설정 한 텍스트 상자와 비교했습니다. 항상 동일하게 렌더링되었으므로 렌더링시 20을 사용합니다. –

+0

아. 나는 그걸 생각하지 않았다. (슬퍼) – benc

0

기본 크기는 20.To 증가 크기 사용 "크기"