diff --git a/src/flask_mail/__init__.py b/src/flask_mail/__init__.py index 697ce0f..e70ac7b 100644 --- a/src/flask_mail/__init__.py +++ b/src/flask_mail/__init__.py @@ -358,6 +358,13 @@ def _message(self) -> MIMEBase: # No html and at least one attachment means multipart msg = MIMEMultipart() msg.attach(self._mimetext(self.body)) + elif len(attachments) == 0 and self.alts: + # Some alternative parts but no attachment means alternative + msg = MIMEMultipart("alternative") + msg.attach(self._mimetext(self.body, "plain")) + + for mimetype, content in self.alts.items(): + msg.attach(self._mimetext(content, mimetype)) else: # Anything else msg = MIMEMultipart()