HTML5에서 target="_blank"를 사용해도 괜찮습니까?
더 이상 HTML5 에서는를 .target="_blank"
HTML5에서 찾을 수 없습니다.
를 계속 ?target="_blank"
?
일반적으로 나쁜 아이디어로 간주된다는 것을 알고 있지만 PDF 같은 것을 위해 새 창을 여는 가장 쉬운 방법이며 자바스크립트에 의존할 필요도 없습니다.
은 처럼 보입니다.target="_blank"
그래도 괜찮습니다.최신 HTML5 초안에는 브라우징 컨텍스트 키워드로 나와 있습니다.
사용해도 괜찮습니다target="_blank"
; 새 창을 대상으로 하면 대부분의 브라우저에서 항상 팝업 경고가 표시되기 때문에 XHTML에서 이 작업을 제거했습니다. XHTML은 항상 유효성 검사에서 대상 속성에 대한 오류를 표시합니다.
HTML 5는 우리가 아직도 사용하고 있기 때문에 그것을 다시 가져왔습니다.우리 친구니까 그냥 놔둘 순 없어요.
절대 놓지 마.
그 가target="_blank"
HTML5에서 사용할 수 있습니다. 개인적으로 절대 사용하지 않으려고 합니다(새로운 창에서 PDF를 여는 경우에도).
HTML은 의미와 내용을 정의해야 합니다."속성을 제거하면 요소의 의미가 달라지나요?"라고 자문해 보십시오.그렇지 않다면 HTML에 코드가 들어가면 안 됩니다. (사실 W3C가 보관하고 있어서 놀랐어요… 정말 그냥 넘어갈 수가 없나 봐요.)
브라우저 동작, 특히 사용자와의 대화형 동작은 자바스크립트와 같은 클라이언트 측 스크립팅 언어로 구현되어야 합니다.브라우저가 특정한 방식으로 동작하기를 원하므로 즉, 새 창을 여는 것을 원하므로 JS를 사용해야 합니다.그러나 말씀하신 것처럼 이러한 동작은 브라우저가 JS에 의존해야 합니다. (비록 사이트가 우아하게 저하되거나, 점진적으로 향상되거나, 무엇이든 간에) 그래도 괜찮을 것입니다.JS가 비활성화된 사용자는 많이 놓치지 않을 것입니다.)
그렇기는 하지만, 이 두 가지 모두 정답은 아닙니다. 링크가 어떻게 열리는지는 결국 최종 사용자가 결정해야 한다는 의견이 있습니다.이 예를 들어보세요.
당신은 위키피디아를 검색하며, 토끼굴 속으로 점점 더 깊이 들어가고 있습니다.읽기 중에 링크를 발견하게 됩니다.
당신이 돌아오기 전에 링크된 페이지를 정말 빨리 훑어보고 싶다고 가정해 보겠습니다.새 탭에서 열다가 끝나면 닫을 수도 있습니다('뒤로' 버튼을 누르고 페이지 다시 로드를 기다리는 데 시간이 너무 오래 걸리기 때문입니다).아니면, 만약 그것이 흥미롭게 보이고 나중을 위해 저장하고 싶다면 어떻게 할까요?대신 새 배경 탭에서 열고 현재 페이지를 계속 읽어보세요.아니면 이 페이지를 다 읽었다고 판단하면 현재 탭의 링크를 따라가게 됩니다.
중요한 것은, 자신만의 워크플로우가 있고 브라우저가 그에 맞게 동작하기를 원한다는 것입니다.이런 결정을 해줬다면 꽤 좌절할 수도 있습니다.
그렇기는 하지만, 웹 개발자들은 링크가 어디로 연결되는지, 어떤 유형과 형식의 소스를 참조하는지, 그리고 무엇을 하는지를 분명히 해야 합니다.툴팁은 친구가 될 수 있습니다(태블릿이나 전화기를 사용하지 않는 한 모바일 사이트에서 지정하십시오).우리 모두는 우리가 예상하지 못했던 곳으로 끌려가거나 의도하지 않았던 일을 일으키는 것이 얼마나 나쁜 일인지 알고 있습니다.
PDF 같은 것을 위해 새 창을 여는 가장 쉬운 방법입니다.
Windows 이외의 사용자를 성가시게 하는 가장 쉬운 방법이기도 합니다.PDF는 다른 플랫폼의 브라우저에서도 잘 열립니다.또한 새 창을 여는 것은 내비게이션 역사를 엉망으로 만들고 스마트폰과 같은 작은 플랫폼에서 문제를 복잡하게 만듭니다.
이전 버전의 Windows(윈도우)가 고장 났다고 해서 PDF 같은 경우 새 창을 열지 마십시오.
의 웹 은 다음을 합니다.target="_blank"
새 탭에서 링크를 열기 위해서만 해당됩니다.사용하는 경우target="_blank"
새 탭에서 링크를 여는 경우에만 공격자에게 취약합니다. (때()target="_blank"
새다)를 사용하여 할 수 .window.opener
소유물.
자바스크립트 코드:
window.opener.location.replace(malicious URL)
예방:
rel="nofollow noopener noreferrer"
HTML5에서 여전히 대상을 허용할 수 있지만 선호하지 않습니다.PDF 파일에 링크하려면 대상 속성 대신 다운로드 속성을 사용합니다.
다음은 예입니다.
<a href="files/invoice.pdf" download>Invoice</a>
원본 파일 이름이 고유한 파일 저장을 위해 코딩된 경우 다운로드 속성에 값을 할당하여 사용자 친화적인 다운로드 이름을 지정할 수 있습니다.
<a href="files/j24oHPqJiUR2ftK0oeNH.pdf" download="invoice.pdf">Invoice</a>
대부분의 최신 브라우저는 이 기능을 지원하지만 일부는 지원하지 않을 수도 있습니다.자세한 정보는 caniuse.com 을 참조하십시오.
정말로 그렇습니다!
http://www.w3.org/TR/2010/WD-html5-20100624/text-level-semantics.html#the-a-element
대상 속성이 요소에 대해 더 이상 사용되지 않는 것 같습니다.<a>
더 안 을 들었을 겁니다
jquery를 사용하면 다음과 같은 방법으로 실행할 수 있습니다. 그러면 새 창이 열립니다.
<input type="button" id="idboton" value="google" name="boton" />
<script type="text/javascript">
$('#idboton').click(function(){
window.open('https://www.google.com.co');
});
</script>
언급URL : https://stackoverflow.com/questions/4198788/is-it-alright-to-use-target-blank-in-html5
'sourcecode' 카테고리의 다른 글
아웃라인과 경계 CSS 속성의 차이점은 무엇입니까? (0) | 2023.10.15 |
---|---|
D3 힘 레이아웃 그래프를 확대하는 방법이 있습니까? (0) | 2023.10.15 |
localhost에서 Google 분석을 사용하지 않도록 설정하는 방법 (0) | 2023.10.15 |
리눅스 커널에서 이상한 코드를 발견했는데 누가 설명해줄 수 있나요? (0) | 2023.10.15 |
C++를 사용하여 내 SQL 데이터베이스를 연결하는 방법 (0) | 2023.10.15 |