এইচটিএমএল বডি সহ মেইলটো লিঙ্ক


319

mailtoএইচটিএমএল ডকুমেন্টে আমার বেশ কয়েকটি লিঙ্ক রয়েছে।

<a href="mailto:etc...">

আমি কি এর mailto:অংশে এইচটিএমএল ফর্ম্যাট বডি sertোকাতে পারি href?

<a href="mailto:me@me.com?subject=Me&body=<b>ME</b>">Mail me</a>

মনে রাখবেন যে আইওএসে (2016), এটি সরল তির্যক, সাহসী বিন্যাসের জন্য যুক্ত করা <i>এবং ঠিক <b>ট্যাগ করার জন্য পুরোপুরি ঠিক ।


1
ঠিক একই জিনিসটি মনে রেখেছিল এবং এটি কিছুক্ষণ অধ্যয়ন করেছিল। আমি বার্তাটির শরীরে এমবেডেড রিমোট <img> রাখার চেষ্টা করছিলাম। মেলটো নির্দেশটি কাজ করার জন্য URL- এনকোড হওয়া দরকার। থান্ডারবার্ডের ফলাফল হ'ল এইচটিএমএল বডিটি তার সমস্ত <img> নির্দেশাবলী এবং সমস্ত সহ আক্ষরিকভাবে উপস্থিত হয়েছিল। আমার ধারণা এটি থান্ডারবার্ড এবং বেশিরভাগ মেল ক্লায়েন্টগুলির একটি সুরক্ষার সমস্যা they তারা আগত মেলটো-সামগ্রীকে পার্স করে যাতে এটি সন্দেহজনক কিছু না করে।
হ্যানস আর।

4
এই পৃষ্ঠাগুলি থেকে সবচেয়ে ভাল আমি খুঁজে পেলাম, zaposphere.com/html-email-links-code .. নীচে নীচে একটি তালিকা দেয়: "অন্যান্য দুর্দান্ত কাস্টমাইজেশন যা অন্যান্য ওয়েবসাইটগুলি উল্লেখ করে না !!" আমাকে অনেক সাহায্য করেছে।
স্টু অ্যান্ড্রুজ

আপনি মৌলিক পাঠ্য সহ ইমেলের প্রতিটি অংশ সেট করতে পারেন। এইচটিএমএল ফর্ম্যাট করা সম্ভব নয় এমন সীমাবদ্ধতার সাথে, এখানে একটি সরঞ্জাম আমি মেলডো মৃতদেহে বিভিন্ন ক্ষেত্রটি কাস্টমাইজ করার জন্য তৈরি করেছি: mailto.now.sh
ডসন বি

উত্তর:


428

আপনি আরএফসি 6068 তে দেখতে পাচ্ছেন , এটি মোটেই সম্ভব নয়:

বিশেষ <hfname>"দেহ" নির্দেশ করে যে সম্পর্কিতটি <hfvalue> বার্তার প্রধান অংশ। "বডি" ক্ষেত্রের মানটি বার্তার প্রথম পাঠ্য / প্লেইন বডি অংশের জন্য সামগ্রী অন্তর্ভুক্ত করে। "বডি" সিউডো শিরোলেখ ক্ষেত্রটি মূলত স্বয়ংক্রিয় প্রক্রিয়াকরণের জন্য সংক্ষিপ্ত পাঠ্য বার্তাগুলি তৈরির উদ্দেশ্যে করা হয় (যেমন মেইলিং তালিকার জন্য "সাবস্ক্রাইব" বার্তা)), সাধারণ এমআইএমএম বডিগুলির জন্য নয়।


4
@ জো ব্লো উত্তর এখনও সঠিক। আরএফসি 6068 যা 2368 অচল করে এখনও বলে যে শরীরটি সরল পাঠ্য।
মার্কাস লাইরে

8
আপনি যদি এই উত্তরের দ্বারা হতাশ হন, দয়া করে পড়তে থাকুন: stackoverflow.com/a/46699855/256272 (টিএল; ড। এমিল ফাইল)
জো

94

না এটি মোটেই সম্ভব নয়।


1
কঠোরভাবে সত্য নয়। সমর্থনটি খুব কমই দেখা গেলেও অন্যান্য উত্তরগুলি দেখিয়েছে যে আইওএস এবং আই + অ্যাক্টিভএক্স + আউটলুক (urgh, ইয়াক) এর সংমিশ্রণে কিছু সীমাবদ্ধ HTML সম্ভব।
সাইমন ইস্ট

89

যদিও আপনার ইমেল বডিটি ফর্ম্যাট করতে এইচটিএমএল ব্যবহার করা সম্ভব নয় তবে আপনি পূর্বের পরামর্শ অনুসারে লাইন ব্রেকগুলি যুক্ত করতে পারেন।

আপনি যদি জাভাস্ক্রিপ্ট ব্যবহার করতে সক্ষম হন তবে "এনকোডেরিউআইআরকিউম্পোনেন্ট ()" নীচের মতো ব্যবহার হতে পারে ...

var formattedBody = "FirstLine \n Second Line \n Third Line";
var mailToLink = "mailto:x@y.com?body=" + encodeURIComponent(formattedBody);
window.location.href = mailToLink;

1
ইমেল ক্লায়েন্টরা এম্বেড জাভাস্ক্রিপ্ট চালাতে পারেন? ওপি বলছে এটি ইমেল যা কোনও ওয়েবপৃষ্ঠা নয় যেখানে মেলটো: লিঙ্কটি থাকবে।
প্রশস্ত_চক্ষু_পুপিলে

ধন্যবাদ, রেলগুলিতে আপনি raw("text \n more text \n\n\t")টেক্সটটি encapsulate করতে ফাংশনটি ব্যবহার করতে পারেন এবং এটি ইমেলের মূল অংশের জন্য লাইন ব্রেক এবং ট্যাবগুলিতে রূপান্তর করতে পারেন
ফায়ারড্রাগন

এটি আমার পক্ষে কাজ করেছে, একটি ক্রোম "মেলটো" থেকে আউটলুকে প্রেরণ। মনে রাখবেন যে আপনাকে কেবল বডি টেক্সটটিই এনকোড করতে হবে, পুরো মেলটো স্ট্রিং নয়; এবং আপনার আগে / পরে কোনও জায়গার দরকার নেই \n
লুক

2
আমি এই পদ্ধতির পছন্দ করেছি, এখানে এটি কার্যকরভাবে দেখতে jsfiddle
অলিভার গ্রে

3
লাইন ব্রেকের জন্য আপনি কেবল% 0 এ ব্যবহার করতে পারেন, তাই আপনাকে জাভাস্ক্রিপ্ট থেকে এটি করার দরকার নেই।
ডার্ক বোয়ার

58

আমি এটি ব্যবহার করেছি এবং এটি এইচটিএমএল ব্যবহার না করে দৃষ্টিভঙ্গির সাথে কাজ করে বলে মনে হচ্ছে তবে শরীরের আউটপুট হিসাবে যুক্ত হওয়ার পরে আপনি কমপক্ষে লাইন বিরতিতে পাঠ্যটি ফর্ম্যাট করতে পারেন।

<a href="mailto:email@address.com?subject=Hello world&body=Line one%0DLine two">Email me</a>

2
সুতরাং "% 0D" নতুন লাইন। একটি এনকোডড ট্যাব কোড সমতুল্য কি?
প্রশস্ত_চক্ষু_পুপিলে

3
% 0D হ'ল একটি নতুন লাইন যা ctrl-m, একটি ট্যাব ctrl-i যা% ০৯ 09 এটির মতো একটি ASCII চার্টটি দেখুন [ asciable.com/index/asciifull.gif] । নিয়ন্ত্রণ অক্ষর 1 থেকে 31 @wide_eyed_pupil মাধ্যমে হয়
জিম বার্গম্যানের

2
এটি করার সময় কোনও স্বাক্ষর মুছে ফেলা হবে বলে মনে হয়।
ভ্যালেন্টিন দেশপা


3
এটি কোনও এইচটিএমএল বডি নয়!
ক্লো 18

46

এটি আপনি যা চান তা একেবারেই নয়, তবে ক্লায়েন্টে একটি ইএমএল ফাইল তৈরি করতে আধুনিক জাভাস্ক্রিপ্ট ব্যবহার করে এটি ব্যবহারকারীর ফাইল সিস্টেমে প্রবাহিত করা সম্ভব, যা তাদের মেইল ​​প্রোগ্রামে এইচটিএমএল সমৃদ্ধ ইমেল খুলবে, যেমন আউটলুক:

https://stackoverflow.com/a/27971771/8595398

এখানে চিত্র এবং টেবিলযুক্ত ইমেলের jsfiddle এখানে রয়েছে: https://jsfiddle.net/seanodotcom/yd1n8Lfh/

এইচটিএমএল

<!-- https://jsfiddle.net/seanodotcom/yd1n8Lfh -->
<textarea id="textbox" style="width: 300px; height: 600px;">
To: User <user@domain.demo>
Subject: Subject
X-Unsent: 1
Content-Type: text/html

<html>
<head>
<style>
    body, html, table {
        font-family: Calibri, Arial, sans-serif;
    }
    .pastdue { color: crimson; }
    table {
        border: 1px solid silver;
        padding: 6px;
    }
    thead {
        text-align: center;
        font-size: 1.2em;
        color: navy;
        background-color: silver;
        font-weight: bold;
    }
    tbody td {
        text-align: center;
    }
</style>
</head>
<body>
<table width=100%>
    <tr>
        <td><img src="http://www.laurell.com/images/logo/laurell_logo_storefront.jpg" width="200" height="57" alt=""></td>
        <td align="right"><h1><span class="pastdue">PAST DUE</span> INVOICE</h1></td>
    </tr>
</table>
<table width=100%>
    <thead>
        <th>Invoice #</th>
        <th>Days Overdue</th>
        <th>Amount Owed</th>
    </thead>
    <tbody>
    <tr>
        <td>OU812</td>
        <td>9</td>
        <td>$4395.00</td>
    </tr>
    <tr>
        <td>OU812</td>
        <td>9</td>
        <td>$4395.00</td>
    </tr>
    <tr>
        <td>OU812</td>
        <td>9</td>
        <td>$4395.00</td>
    </tr>
    </tbody>
</table>
</body>
</html>
</textarea> <br>
<button id="create">Create file</button><br><br>
<a download="message.eml" id="downloadlink" style="display: none">Download</a>

জাভাস্ক্রিপ্ট

(function () {
var textFile = null,
  makeTextFile = function (text) {
    var data = new Blob([text], {type: 'text/plain'});
    if (textFile !== null) {
      window.URL.revokeObjectURL(textFile);
    }
    textFile = window.URL.createObjectURL(data);
    return textFile;
  };

  var create = document.getElementById('create'),
    textbox = document.getElementById('textbox');
  create.addEventListener('click', function () {
    var link = document.getElementById('downloadlink');
    link.href = makeTextFile(textbox.value);
    link.style.display = 'block';
  }, false);
})();

8
এখন এটি একটি অভিনব ধারণা
গ্রেগ

2
ঝরঝরে ধারণা, তবে কেবল রেকর্ডের জন্য, সর্বশেষ অ্যাপল মেলটিতে, এই ফাইলটি খোলা হবে তবে সম্পাদনাযোগ্য / প্রেরণীয় হবে না, এটি প্রেরিত ইমেল রেকর্ডের মতো কাজ করে
pmarreck

1
অ্যাপল মেল (১১.২) এর সাহায্যে একবার .eml ফাইলটি খুললে আপনি ইমেলটি সম্পাদনা মোডে রাখার জন্য মেনু (shift-cmd-D) থেকে বার্তা / প্রেরণ আবার নির্বাচন করতে পারেন।
জেফ কলিয়ার

30

কিছু জিনিস সম্ভব, কিন্তু সব না, আপনি লাইন ব্রেক চাই, পরিবর্তে ব্যবহার করার উদাহরণস্বরূপ বলা <br />ব্যবহার%0D%0A

উদাহরণ:

<a href="mailto:?subject=&body=Hello,%0D%0A%0D%0AHere is the link to the PDF Brochure.%0D%0A%0D%0ATo view the brochure please click the following link: http://www.uyslist.com/yachts/brochure.pdf"><img src="images/email.png" alt="EMail PDF Brochure" /></a>                        

7
এটি এইচটিএমএল নয় ... এখনও পাঠ্য।
ব্র্যাড

আপনি যদি নিজের ইমেলটি $ মেলহেডারের সাহায্যে ফর্ম্যাট করেন not "কন্টেন্ট-টাইপ: পাঠ্য / এইচটিএমএল; চরসেট = আইসো -8859-1 \ r \ n";
স্টিফেন কাউফম্যান

12
@ স্টেফেনকফম্যান - আপনি ইমেল প্রেরণকারী নন, তবে ক্লায়েন্ট যারা লিঙ্কটি ক্লিক করেন। মানে আপনি কীভাবে ইমেল ক্লায়েন্ট সেট করা আছে তা জানেন না। আপনি জানেন না যে এর শিরোনাম কীভাবে সেট করা আছে। এটি কিছু ইমেল ক্লায়েন্টগুলিতে কাজ করবে এবং অন্যের জন্য হবে না।
নারিক্স

1
ধন্যবাদ, এটি আমার জন্য দ্বিতীয় সেরা বিকল্প ছিল, যদি আমি এইচটিএমএল না করতে পারি তবে কমপক্ষে আমি গাড়ীর রিটার্ন করতে পারি। আমার দ্বারা ভাল।
হামিশ

16

এটা তোলে যে ইশারা আইফোনের Safari তে, অন্তত, যেমন মৌলিক এইচটিএমএল ট্যাগ ঢোকাতে মূল্য <b>, <i>এবং <img>(যা আদর্শভাবে তোমাকে আর যাহাই হউক না কেন অন্যান্য পরিস্থিতির মধ্যে ব্যবহার করা উচিত নয়, সিএসএস করা উচিত ছিল) শরীরের পরামিতি মধ্যে mailto:দেখা দিতে পারে কাজ - তারা ইমেল ক্লায়েন্টের মধ্যে সম্মানিত হয়। এটি অন্যান্য মোবাইল বা ডেস্কটপ ব্রাউজার / ইমেল ক্লায়েন্ট কম্বোস দ্বারা সমর্থিত কিনা তা দেখার জন্য আমি নিরীক্ষণমূলক পরীক্ষা করিনি। এটি সত্যই মান-সম্মতিযুক্ত কিনা তা সন্দেহজনক। আপনি যদি সেই প্ল্যাটফর্মের জন্য নির্মাণ করছেন তবে দরকারী হতে পারে।

অন্যান্য প্রতিক্রিয়া হিসাবে উল্লেখ করা হয়েছে, লিঙ্কটিতে এম্বেড করার আগে আপনার পুরো শরীরের এনকোডিউআরআইকিউম্পোন্ট ব্যবহার করা উচিত mailto:


হ্যাঁ, এটি আইওএস-তে সাধারণ গা .়, ইটালিক ট্যাগগুলি যুক্ত করতে পুরোপুরি কাজ করে।
ফ্যাটি

আইওএস-এ আমি <img src = 'mybase64' /> - সহ সঠিক ইমেল প্রেরণ করতে পারি না - জিমেইলে আমি আমার বার্তার ভিতরে বেস 64 দেখতে পাই।
ভিটালি জেডনেভিচ


0

এইচটিএমএল ভাগ করে নেওয়ার বিষয়ে আমার একই সমস্যা আছে। আমি আমার জন্য নীচে এইচটিএমএল কাজ করি। <সাথে <&> সাথে> প্রতিস্থাপন করুন।

<a href="mailto:?subject=link Share&body=&lt;a href='www.google.com'&gt;google&lt;/a&gt;">Email</a>

দ্রষ্টব্য: এটি কেবল উবুন্টুতে কাজ করে। এটি উইন্ডোতে কাজ করবে না।


-1

যে কেউ নীচের চেষ্টা করতে পারেন (মেলটো ফাংশন কেবল প্লেইন টেক্সট গ্রহণ করে তবে এখানে আমি কীভাবে এইচটিএমএল অভ্যন্তরীণ পাঠ্য বৈশিষ্ট্যগুলি ব্যবহার করতে হয় এবং কীভাবে মেলটো বডি প্যারাম হিসাবে অ্যাঙ্কর যুক্ত করতে পারি তা দেখিয়েছি):

//Create as many html elements you need.

const titleElement = document.createElement("DIV");
titleElement.innerHTML = this.shareInformation.title; // Just some string

//Here I create an <a> so I can use href property
const titleLinkElement = document.createElement("a");
titleLinkElement.href = this.shareInformation.link; // This is a url

...

let mail = document.createElement("a");

// Using es6 template literals add the html innerText property and anchor element created to mailto body parameter
mail.href = 
  `mailto:?subject=${titleElement.innerText}&body=${titleLinkElement}%0D%0A${abstractElement.innerText}`;
mail.click();

// Notice how I use ${titleLinkElement} that is an anchor element, so mailto uses its href and renders the url I needed

-3

নিউলাইনগুলি সন্নিবেশ করার জন্য ইউনিকোডের মানগুলি প্রবেশ করা সম্ভব (যেমন \u0009:) তবে এইচটিএমএল ট্যাগগুলির বিভিন্ন ডিগ্রি সমর্থন রয়েছে এবং এড়ানো উচিত।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.