문제

이것은 최소 허용 음수 값 text-indent 재산?

나는 내 사이트에서 이상할 정도로 큰 값을 사용하고 있었습니다(예: text-indent: -99999999px), 마지막 Google Chrome 업데이트에서 작동이 중지되었습니다.IE는 여전히 잘 작동하지만 Chrome에서 다시 작동하게 하려면 거기에서 9를 몇 개 제거해야 할 수도 있습니다.

부인 성명:예, 이 값은 약간 편집증적입니다. 저는 이 값을 재미로 사용했고 오늘 화면에 텍스트가 나타날 때까지 완전히 잊어버렸습니다.하지만 일반적으로 제안하는 text-indent: -9999px (그렇지는 않지만) 먼 미래의 어느 시점에 쉽게 실패할 수도 있습니까?

도움이 되었습니까?

해결책

안전한 값은 아마 -32768px, 그러나 이는 사양의 일부가 아니라 (아마도 오래된) 구현 관련 레거시 제한 사항을 관찰한 것입니다.

렌더링 시 CSS 속성 값을 요소에 적용하려면 먼저 해당 선언을 문자열보다 더 작동 가능하고 추상적인 것으로 구문 분석해야 합니다.내 말은, 당신은 할 수 있습니다 유형 속성 값으로 거의 모든 것:

.a {text-indent: -999px;}
.b {text-indent: -99999999px;}
.c {text-indent: medium potato;}

첫 번째 예는 손가락이 교차하여 올바르게 구문 분석됩니다.마지막 것은 유효하지 않으며 무시됩니다(중형 감자는 현재 w3c CSS 사양의 일부가 아니기 때문입니다).하지만 중간은 좀 이상할 것 같아요 과다 (브라우저가 할당한 메모리에 "맞지" 않습니다)나는 바이올린을 만들었고 이것들은 text-indent 브라우저가 "질식"하고 기본값이 0으로 설정된 값:

#On OSX 10.8 Lion 64bit:
Safari 6       -2^31
Chrome 22      -2^26  #your original -99999999px would have failed here
Firefox 14     -2^70
Opera 12       -2^70

#On Win Server 2008 64bit:
Firefox 13     -2^70
Chrome 21      -2^70
IE 9           -2^70

이것이 궁금해졌습니다. 내일 다른 상자에 대해 더 많은 테스트를 실행하겠습니다. 위의 결과가 업데이트되었으며 그다지 흥분되는 것은 없습니다. 이 바이올린을 사용하여 자체 테스트를 실행할 수도 있습니다. - 보이는 상태로 남아 있는 첫 번째 항목에는 무시된 적용된 값이 표시됩니다. 사용되는 브라우저/OS에 따라 값이 달라질 수 있다고 가정합니다. 혹시 하드웨어.

처음 본 기억이 나네요 현실적인 그러한 제한에 대한 언급은 가짜 기둥 스타일링에 관한 기사^ 이는 16비트 부호 있는 정수(-32768에서 +32767까지)라는 보수적 제약 조건을 제안했습니다. 이는 다음에 적용됩니다. 뿐만 아니라 텍스트는 들여쓰기되지만 길이 값은 다릅니다.이 값이 다양한 브라우저와 해당 버전에서 얼마나 일관성이 있는지, 다른 단위로 표현된 분수나 값에 얼마나 적용 가능한지는 잘 모르겠습니다.

다른 팁

최소한의 텍스트가 없습니다. 이전에는 두 개의 픽셀 만 사용했지만 레이아웃 / 디자인에 사용하는 것이 나쁜 연습이며, 혈장 크기의 레이아웃 99999px를 볼 때 화면에서 스크롤되는지 확인하십시오.- 여전히 텍스트를보고 스타일을 사용하고있는 경우 여백 패드 및 위치를 사용하십시오.

IPad Safari에서 99999 젬을 사용하여 9999EM로 설정하여 고정되어 있습니다. 그래서 어쩌면 제한이 없지만이 실수를 피하기 위해 하나가되어야합니다.

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