mailto :를 사용하여 이메일의 제목 / 내용을 설정할 수 있습니까?


답변:


1459

예, mailto의 모든 팁과 요령을 살펴보십시오. http://www.angelfire.com/dc/html-webmaster/mailto.htm

mailto 주제 예 :

<a href="mailto:no-one@snai1mai1.com?subject=free chocolate">example</a>

내용이있는 mailto :

<a href="mailto:no-one@snai1mai1.com?subject=look at this website&body=Hi,I found this website and thought you might like it http://www.geocities.com/wowhtml/">tell a friend</a>

코멘트에 언급, 모두로 subject하고 body올바르게 이스케이프해야합니다. encodeURIComponent(subject)특정한 경우에는 수작업 코딩 대신 각각에 사용하십시오 .

으로 후디가 코멘트에 언급, 당신은 문자열의 다음 인코딩 순서를 추가하여 줄 바꿈을 추가 할 수 있습니다 :

%0D%0A // one line break

29
본문에 HTML을 사용할 수 있습니까?
Jiew Meng

18
그것은 전적으로 고객에 따라 다릅니다. 일반적인 경우에는 아닙니다.
tripleee

4
참고로 : 주제를 htmlescape 할 필요가 없습니다
Oscar Pérez

17
W3C에서는 다음 규칙에 따라 문자열을 인코딩해야합니다. 문자는 NFC로 표시해야하며 공백은 % 20으로 이스케이프해야합니다.
gordie

96
다른 누군가가 궁금한 경우 % 0D % 0A 시퀀스 -cubetoon.com/2008/…를
Hoody

123
<a href="mailto:manish@simplygraphix.com?subject=Feedback for 
webdevelopersnotes.com&body=The Tips and Tricks section is great
&cc=anotheremailaddress@anotherdomain.com
&bcc=onemore@anotherdomain.com">Send me an email</a>

이 코드를 사용하여 제목, 본문, 참조, 숨은 참조를 설정할 수 있습니다


39

mailto:URL 방식은에 정의되어 RFC 2368 . 또한 정보를 URL 및 URI로 인코딩하는 규칙은 RFC 1738에 정의 된 다음 RFC 3986에 정의되어 있습니다. 다음은 bodysubject헤더를 URL (URI) 에 포함하는 방법을 규정합니다 .

mailto:infobot@example.com?subject=current-issue&body=send%20current-issue

특히 이메일 주소, 제목 및 본문을 퍼센트 인코딩하여 위 형식으로 입력해야합니다. 퍼센트 인코딩 된 텍스트는 HTML에서 사용하기에 적합하지만이 URL은 HTML4 표준href 에 따라 속성 에서 사용하기 위해 엔티티 인코딩되어야합니다 .

<a href="mailto:infobot@example.com?subject=current-issue&amp;body=send%20current-issue">Send email</a>

가장 일반적으로 위의 코드를 인코딩하는 간단한 PHP 스크립트가 있습니다.

<?php
$encodedTo = rawurlencode($message->to);
$encodedSubject = rawurlencode($message->subject);
$encodedBody = rawurlencode($message->body);
$uri = "mailto:$encodedTo?subject=$encodedSubject&body=$encodedBody";
$encodedUri = htmlspecialchars($uri);
echo "<a href=\"$encodedUri\">Send email</a>";
?>

다음은 이메일에 URL이 있고 해당 URL에 인코딩해야 할 내용이있는 경우에 대한보다 자세한 예입니다. stackoverflow.com/questions/4744888/…
William Entriken

1
나는 줄에 오타가 있다고 생각 $uri = ...다음 &의 앞에서는 subject해야한다?
jost21

24

다음 방법 중 하나를 사용하여 mailto 명령에 추가 된 제목을 추가 할 수 있습니다. mailto 태그에 mailto outject를 추가하십시오.

<a href="mailto:test@example.com?subject=testing out mailto">First Example</a>

아래 예제와 같이 태그 끝에 & body를 추가하여 메시지 본문에 텍스트를 추가 할 수도 있습니다.

 <a href="mailto:test@example.com?subject=testing out mailto&body=Just testing">Second Example</a>

본문 외에도 사용자는 & cc 또는 & bcc를 입력하여 CC 및 BCC 필드를 채울 수 있습니다.

<a href="mailto:test@example.com?subject=testing out mailto&body=Just testing&cc=test1@example.com&bcc=test1@example.com">Third
    Example</a>

mailto 태그에 제목을 추가하는 방법


13

이것을 쉽게하기 위해 오픈 소스 도구를 만들었습니다. 원하는 문자열을 입력하면 즉시 다음을 얻을 수 있습니다 mailto.

mailto.now.sh

💌⚡️ mailto에서 전체 이메일 템플릿

여기에 이미지 설명을 입력하십시오


12
mailto:joe@company.com?subject=Your+subject

1
subject텍스트가 아닙니다. 테이블입니다. 그것을 추가하는 방법.
David

9

좀 더 읽기 쉽도록 별도의 줄로 나눕니다.

<a href="

    mailto:johndoe@gmail.com

    ?subject=My+great+email+to+you

    &body=This+is+an+awesome+email

    &cc=janedoe@gmail.com

    &bcc=billybob@yahoo.com

">Click here to send email!</a>

1
이 질문은 5 년 전에 답변되었습니다.
varun aaruru

14
그리고 그것은 아직도 당신이 무언가를 메일로
보내고


7

예:

사용 흔한 형태 요소와 링크 인코딩을 실험 할 수 있습니다.

제목, 본문 (예 : 내용) 등을 양식에 입력하고 버튼을 누르고 페이지에 붙여 넣을 수있는 mailto html 링크를 볼 수 있습니다.

전자 메일에서 cc, bcc와 같이 거의 알려지지 않은 요소를 지정할 수도 있습니다.


또한이 href 필드 작성기의 매우 유용한 기능은 모든 문자를 16 진수로 인코딩하는 기능입니다 (예 : [Test Zõne]%5BTest%20Z%C3%B5ne%5D스팸 스팸봇을 피할 수 있음).
Armfoot

모든 문자를 인코딩하도록 선택하면 모든 문자가 HTML 표기법으로 변환됩니다 &#x(스팸 봇 제외).
Armfoot

4
이 링크는 죽었습니다.
Bram Vanroy

6

예, 당신은 이것을 좋아할 수 있습니다 :

mailto: email@host.com?subject=something

2
나는 공간이 있어야한다고 생각하지 않습니까?
nafg December

공간이 없어야합니다.
하산 라자

5

RFC 2368 에 따르면 메시지 본문에서 HTML을 사용할 수 없습니다 .

특수 hname "body"는 연관된 hvalue가 메시지의 본문임을 나타냅니다. "본문"hname에는 메시지의 첫 번째 텍스트 / 일반 본문 부분에 대한 내용이 포함되어야합니다. mailto URL은 주로 일반 MIME 본문이 아니라 실제로 자동 처리 내용 (예 : 메일 목록의 "구독"메시지) 인 짧은 텍스트 메시지를 생성하기위한 것입니다.

크레딧 : https://stackoverflow.com/a/13415988/1835519


2
문제는 주제와 내용을 설정하는 방법을 묻는 것입니다. 형식에 대해서는 언급하지 않았습니다. 그 노트에 유용한 것은 대답에있는 동안, 당신은 무엇에 대해 조금 남겨 입니다 가능하고 어떻게 그것을 달성하는 방법을. 그것 없이는 이것은 답이 아닌 주석입니다.
Quentin

Jure 나는이 질문에 대한 답으로 이것을 당신이 알아 내고 스스로에게 요구 한 것이기 때문에 이것을 당신에게 정말로 감사합니다. Quentin은 이것이 OP 질문에 대답하지 않는다고 생각하지만이 게시물을 가져온 검색 결과에 대한 대답입니다. 정말 고마워요!
user1567291

3

선택 가능한 제목과 본문이있는 mailto : 링크를 생성하는 데 도움이되는 실행 가능한 스 니펫이 있습니다.

function generate() {
  var email = $('#email').val();
  var subject = $('#subject').val();
  var body = $('#body').val();

  var mailto = 'mailto:' + email;
  var params = {};
  if (subject) {
    params.subject = subject;
  }
  if (body) {
    params.body = body;
  }
  if (params) {
    mailto += '?' + $.param(params);
  }

  var $output = $('#output');
  $output.val(mailto);
  $output.focus();
  $output.select();
  document.execCommand('copy');
}

$(document).ready(function() {
  $('#generate').on('click', generate);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="email" placeholder="email address" /><br/>
<input type="text" id="subject" placeholder="Subject" /><br/>
<textarea id="body" placeholder="Body"></textarea><br/>
<button type="button" id="generate">Generate & copy to clipboard</button><br/>
<textarea id="output">Output</textarea>


1

이메일에 html 콘텐츠를 추가하려면 메시지 본문의 html 코드를 url 인코딩하여 mailto 링크 코드에 포함 시키십시오. 그러나이 링크에서 이메일의 유형을 일반 텍스트에서 html로 설정할 수는 없습니다. 링크를 사용하는 클라이언트는 기본적으로 html 이메일을 보내려면 메일 클라이언트가 필요합니다. 테스트하려는 경우 간단한 mailto 링크의 코드가 있고 링크로 이미지가 래핑되어 있습니다 (가시성을 위해 각도 스타일 URL이 추가됨).

<a href="mailto:?body=%3Ca%20href%3D%22{{ scope.url }}%22%3E%3Cimg%20src%3D%22{{ scope.url }}%22%20width%3D%22300%22%20%2F%3E%3C%2Fa%3E">

html 태그는 URL 인코딩됩니다.


본문 <a href>에 href와 텍스트와 종료 태그 사이에 텍스트가있는 예를 게시 할 수 있습니까? 감사합니다
user1567291

<a href="<위와 동일> "> 이것은 링크 텍스트입니다 </a> @ user1567291
serdarsenay

작동하지 않습니다. 이메일 클라이언트는 모든 HTML 태그를 서식있는 텍스트 문서로 처리하는 대신 텍스트로 표시합니다.
Ε Г И І И О
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.