1) 목적:
jsp에서 CSS 문을 동적으로 생성한 후 브라우저에 출력하여 구문 분석 및 렌더링합니다.
2) 브라우저 파싱 파일의 기초:
페이지가 로드된 후 브라우저는 다양한 리소스를 다운로드하기 위해 다양한 요청을 시작합니다.
예를 들어 CSS 파일을 다운로드한 다음 CSS 파싱 규칙에 따라 문서를 파싱합니다. 다운로드한 파일의 Content-Type이 일치하지 않으면 브라우저가 자동으로 차단합니다.
브라우저의 구문 분석 규칙을 알고 나면 jsp가 해야 할 일은 자체 Content-Type을 CSS로 위장하는 것입니다. "텍스트/CSS".
index.html
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <title>jsp文件输出为css文件</title> <link type="text/css" rel="stylesheet" href="./css.jsp" /> </head> <body> <p class="demo">wall say: hello!</p> </body> </html>
css.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" session="false"%> <% // 伪装响应的http头部 response.setHeader("Content-Type", "text/css"); // 输出css样式 out.clear(); out.print("@charset \"utf-8\";\n"); out.print("p{color:red;}\n"); %>
jsp를 CSS 파일로 위장하는데 성공했고, 브라우저에서 스타일 파싱에 성공했습니다!
이 변장 규칙에 따르면 jsp는 브라우저가 구문 분석할 수 있는 한 모든 파일 형식으로 위장될 수 있습니다.
예를 들어 js로 위장한 경우 Content-Type을 "application/x-javascript"로 설정하세요.
더 많은 Content-Type 위장 - jsp를 CSS로 위장하려면 PHP에 주의하세요. 관련 기사를 볼 수 있는 중국 사이트!