IT Share you

HTML 속성에 작은 따옴표를 사용하는 것이 맞습니까?

shareyou 2020. 11. 17. 21:24
반응형

HTML 속성에 작은 따옴표를 사용하는 것이 맞습니까?


최근에 나는 이것을 많이 보았다 :

<a href='http://widget-site-example.com/example.html'>
    <img src='http://widget-site-example.com/ross.jpg' alt='Ross&#39;s Widget' />
</a>

HTML에서 작은 따옴표를 사용하는 것이 유효합니까? 위에서 강조했듯이 아포스트로피를 피해야하므로 문제가됩니다.


작은 따옴표를 사용하는 것은 확실히 유효합니다 ( HTML 4.01, 섹션 3.2.2 ). 나는 그런 경향을 눈치 채지 못했지만, 아마도 당신이 방문한 웹 사이트에 작은 따옴표를 사용하여 인용하는 프레임 워크가있을 것이다.


큰 따옴표 문자열 리터럴을 사용하는 프로그래밍 언어를 사용하여 HTML을 동적으로 생성 할 때 작은 따옴표를 사용하는 것이 편리합니다.

예 :

String.Format("<a href='{0}'>{1}</a>", Url, Desc)

PHP를 사용하여 HTML을 생성 할 때 다음과 같은 작업을 더 쉽게 수행 할 수 있습니다.

$html = "<img src='$url' />";

PHP가 큰 따옴표로 묶인 문자열에서 변수를 구문 분석하기 때문에 문자열을 문자열로 변수와 연결하는 것보다


누군가는 큰 따옴표로 묶인 문자열을 사용하여 그 안의 변수를 구문 분석하거나 문자열 연결 연산자를 사용하지 않으려면 이스케이프 "를 피하기 위해 PHP에서 사용할 수 있습니다.

예:

echo "<input type='text' value='$data'/>";

대신에

echo "<input type=\"text\" value=\"$data\" />";

또는

echo '<input type="text" value="' . $data . '" />';

요즘에는 HTML에는 큰 따옴표를, 자바 스크립트에는 작은 따옴표를 사용합니다.


큰 따옴표를 삽입하려는 경우 더 쉽습니다.


ASP.NET에서는 특성에 데이터 바인딩 식사용 하는 경우 작은 따옴표를 사용하는 것이 더 쉽습니다 .

<asp:TextBox runat="server" Text='<%# Bind("Name") %>' />

작은 따옴표는 (X) HTML에서 완벽하게 합법적입니다. 반면에 백 슬래시를 사용하여 이스케이프하는 것은 아닙니다. 대체 텍스트 "Ross \"와 비어있는 / 속성 이있는 이미지입니다 . HTML에서 아포스트로피를 이스케이프하는 올바른 방법은 .<img src='http://widget-site-example.com/ross.jpg' alt='Ross\'s Widget' />sWidgetWidget'&#39;


PHP에서 echo는 여러 매개 변수를 사용합니다. 따라서 연결 연산자를 생략하려면 다음과 같이 할 수 있으며 여전히 큰 따옴표를 사용할 수 있습니다.

echo '<input type="text" value="', $data, '" />';

작은 따옴표는 덜 깔끔한 페이지를 생성합니다. HTML 문자열에서 이스케이프해서는 안되며 사용할 선택입니다 ... 내 기본 설정은 일반적으로 작은 따옴표이며 문자열에 작은 따옴표를 포함해야하는 경우 (예 : 문자열 내부의 문자열 구분 기호로), 하나에는 큰 따옴표를 사용하고 다른 하나에는 작은 따옴표를 사용합니다.


당신이 원하는 경우 유효 또는 한 후 모두 또는 속성에 대해 작동합니다. HTML4는 https://validator.w3.org/에서 확인할 수 있습니다.

당신이 경우 최신 브라우저에서만 지원 ( 및 이상) 다음은 사용할 수있는 (한 속성 '값에 특수 문자가없는 한) 작은 따옴표, 큰 따옴표와 따옴표를 허용 구문을. HTML5는 https://validator.w3.org/nu에서 확인할 수 있습니다.


작은 따옴표에 대한 것은 무엇입니까?

현재 태그 내에 동일한 인용 스타일을 유지하는 한 아무 문제없이 html 코드 전체에 작은 따옴표 / 큰 따옴표를 사용할 수 있습니다 (많은 브라우저가 이에 대해 불평하지 않으며 유효성 검사는 인용문, 동일한 타당성 내에서 동일하게 끝남)

무작위 인용 스타일에 대한 무료 지원 !!! (예; D)


나는 이것이 오래된 스레드라는 것을 알고 있지만 여전히 매우 관련이 있습니다.

생성 된 HTML에서 따옴표를 제어하려면 PHP에서 sprintf () 함수를 사용할 수 있습니다 (및 다른 여러 언어에서 유사한 호출을 사용할 수 있음).

$html = sprintf('<a href="%s">%s</a>', $url, $text);

sprintf ()를 사용하면 형식 문자열을 데이터베이스 나 구성 파일에서 검색하거나 변환 메커니즘을 통해 쉽게 수정할 수 있습니다.

매우 읽기 쉽고 생성 된 HTML에서 큰 따옴표 또는 작은 따옴표를 허용하며 거의 변경하지 않고 이스케이프하지 않습니다.

$html = sprintf("<a href='%s'>%s</a>", $url, $text);

SHIFT키를 눌러 저장하지 않겠습니까? 동일한 마일리지에 대해 키 입력이 하나 더 적습니다.


작은 따옴표를 사용할 수있는 또 다른 경우 : 데이터 속성에 JSON 데이터 저장 :

<tr data-info='{"test":true}'></tr>

JSON 개체 키는 큰 따옴표로 묶어야하므로 속성 자체는 할 수 없습니다.


따옴표는 모두 피해야합니다.

귀하의 예에서 인용 된 하나의 속성 만 실제로 따옴표가 필요했습니다.

<!-- best form -->
<a href=http://widget-site-example.com/example.html>
  <img src=http://widget-site-example.com/ross.jpg alt='Ross&#39;s Widget' />
</a>

따옴표를 사용하면 엄격하고 빠른 규칙이 없지만 필요한 경우 내부에 큰 따옴표가있는 가장 일반적으로 작은 따옴표를 보았습니다.

큰 따옴표를 사용하면 일부 유효성 검사기를 통과하지 못합니다.

참고 URL : https://stackoverflow.com/questions/242766/is-it-correct-to-use-single-quotes-for-html-attributes

반응형