Treehouse: Grow your CSS skills. Land your dream job.

Last updated on:

Mailto Links


Open default mail program, create new message with the TO field already filled out.

<a href="">Email Us</a>  

Adding a subject

Open default mail program, create new message with the TO and SUBJECT field already filled out. Essentially we are adding the parameter subject to the href value.

Spaces in the subject will probably work OK, but to be super-extra sure, you can replace spaces with "%20".

<a href=" from Our Site">Email Us</a>  

Adding CC and BCC

Open default mail program, create new message with the TO, SUBJECT, CC, and BCC field already filled out. Essentially we are adding the parameters cc and bcc to the href value.

Also note that you add multiple values to CC and BCC by comma separating them.

<a href=",,">Email Us</a>

Adding Body Text

Just add the body parameter into the ever-growing list of parameters we are using.

<a href=",,">Email Us</a>


  1. JMLeon
    Permalink to comment#

    Sadly, mailto’s are a call-for-spammers widely, so this is a curiosity more than something to use actually.

  2. Jessi Hance
    Permalink to comment#

    @JMLeon: Not if you use Hivelogic’s Enkoder:

    I just used this today for a client, as a stop-gap till he can set up a contact form.

  3. OldGuy
    Permalink to comment#

    Although people have been steadfast in their belief that the sky would fall, the world would end, and that their email boxes would overflow with spam if they were crazy enough to use mailto, I have yet to see the problem materialize. I have a number of smallish sites that have been up for years using mailto without ever having a problem. I do use contact forms on larger sites but only because I think it looks more professional.

    Excellent post Chris! Very handy stuff.

  4. Kartlos Tchavelachvili
    Permalink to comment#

    I think you can use also the Paragraphs in the body message. Syntax = %0A%0A

    MailTo with multiline message in Body

  5. Kartlos Tchavelachvili
    Permalink to comment#

    a href=” message’s first paragraph.%0A%0ASecond paragraph.%0A%0AThird Paragraph.”

  6. Brian Lang
    Permalink to comment#

    Caution: This may NOT work with all mail clients. I’ve had problems getting this to work with some mail clients in the past.

  7. chaitanya T

    Thank you for the simple and effective approach for a contact option. Its nice.

  8. Zeyad
    Permalink to comment#


  9. Don

    Thank you

  10. Pete
    Permalink to comment#

    Thanks for reminding me about something I learnt originally in the 90s!

  11. kunjan raychura
    Permalink to comment#

    Style links depending on file format

    /* external links */
    padding-right: 20px;
    background: url(external.gif) no-repeat center right;

    /* emails */
        padding-right: 20px;
        background: url(email.png) no-repeat center right;
    /* pdfs */
        padding-right: 20px;
        background: url(pdf.png) no-repeat center right;
  12. premkumar
    Permalink to comment#

    not worked in safari browser…

  13. pankaj
    Permalink to comment#

    I am using this code in ipad app and it’s working perfectly but the problem is that all work is done out side the app means after mail, app is closed.

  14. BSK
    Permalink to comment#

    Can we attache any attachment with this. Please let me know.

Leave a Comment

Posting Code

We highly encourage you to post problematic HTML/CSS/JavaScript over on CodePen and include the link in your post. It's much easier to see, understand, and help with when you do that.

Markdown is supported, so you can write inline code like `<div>this</div>` or multiline blocks of code in in triple backtick fences like this:

  function example() {
    element.innerHTML = "<div>code</div>";