2014-09-04 3 views
0

사용자의 텍스트 필드로 testarea을 사용하는 Firefox OS 용 간단한 텍스트 편집기를 만들려고합니다. 필자는 화면 방향을 세로에서 가로 또는 바이스로 변경 할 때 시뮬레이터를 사용할 때 textarea이 자동으로 방향을 변경하고 전체 화면 크기를 가져와야합니다. 하지만 방향을 변경할 때마다 나는 앱 :(Firefox의 화면 방향으로 텍스트 영역 크기 조정

를 다시로드해야 내가 screen.orientation를하려고하면 그것은 정의되지 않은 결과

벨로 코드가 나는 화면 크기

HTML 얻기 위해 사용합니다.

에게
<textarea id="input-text" onfocus="TextareaOnFocus()" onblur="TextareaRealeseFocus()"></textarea> 

자바 스크립트 :

var textAreaSize = document.getElementById("input-text"); 
textAreaSize.style.height = screen.height - 74 + "px"; // -74, so that the field is not edge to edge 
textAreaSize.style.width = screen.width - 21 + "px"; // -21, so that the field is not edge to edge 

그리고있다 키보드 크기를 변경하는 방법은 화면의 절반을 덮어서 내 텍스트가 매우 작아집니다.

답변

0

CSS의 텍스트 영역 크기를 설정하면 calc 및 과 같은 멋진 정보가 표시됩니다.

#input-text { 
    height: calc(100vh - 74px); 
    width: calc(100vw - 21px); 
} 

회전 할 때도 자동으로 작동합니다. 방향 API는 순간에 비표준입니다, 그래서 당신은 moz와 접두사해야하기 때문에


screen.orientation이 작동하지 않는 이유이다. 예 : screen.mozOrientation이 정상적으로 작동합니다.

+0

너비를 100 %로 수정하여 방향이 바뀌면서 문제가 해결되었습니다. 하지만 CSS에서 높이를한다면 : calc (100vh - 74px); 또는 고도 : calc (100vh); 페이지로드시 텍스트 영역이 전체 화면을 덮지 않습니다 (텍스트 영역의 기본 높이와 비슷 함). 그러나 그 후 textarea를 클릭하면 설정된 크기 (전체 화면)가됩니다. – Riki

관련 문제