HTML Электронная почта в VBA - Удалить пробел после неупорядоченного списка - PullRequest
0 голосов
/ 25 февраля 2020

Я пытаюсь удалить пробел после выделенного жирным шрифтом "Заголовка" и до моих "пуль" в моем письме HTML в VBA. Я включил свой код и изображение его вывода ниже. Я видел сообщения, использующие CSS в HTML, но я не уверен, как получить к ним доступ через VBA ... Помощь будет принята!

 With OMail
.Display
End With
    signature = OMail.HTMLbody
With OMail
.Subject = "Subject"
.HTMLbody = "<style> ul {margin-top:0px;} li {margin-left:10px;}</style> " _
& "Unbulleted Text" _
& "<br>" & "<br>" & "<b>Header</b>" _
& "<ul>" & "<li>" & "bullet one" _
& "</li>" & "<li>" & "bullet two" _
& "</li>" & "<li>" & "bullet three" _
& "</li>" & "</ul>" & "Unbulleted Text"
End With

Приведенный выше код был изменен для представления Предлагаемые решения приведены ниже, однако результат остается тем же (см. рисунок) enter image description here

Ответы [ 2 ]

2 голосов
/ 25 февраля 2020

Добавьте CSS / Стили, как любая другая строка.

В этом случае вы хотите удалить поле из элемента ul:

"<style> ul {margin:0px;} </style>"

Если вы также не хотите удалять нижнее поле, используйте это:

"<style> ul {margin-top:0px;} </style>"

Если по какой-то причине это влияет на элементы li, попробуйте использовать это:

"<style> ul {margin-top:0px;} li {margin-left:50px;}</style>"
Примечание: это добавляет margin-top к UL, но добавляет margin-left к LI.

Вы можете добавить эту строку до или после вашего HTML (но не смешанный внутри элементов html, как видно в комментариях), это не имеет значения, но большинство людей ставят стили вверху, перед HTML.


.HTMLbody = "<style> ul {margin-top:0px;} li {margin-left:50px;}</style> " _ 
& "Unbulleted Text" _
& "<br>" & "<br>" & "<b>Header</b>" _
& "<ul>" & "<li>" & "bullet one" _
& "</li>" & "<li>" & "bullet two" _
& "</li>" & "<li>" & "bullet three" _
& "</li>" & "</ul>" & "Unbulleted Text"
1 голос
/ 26 февраля 2020

Если вы добавите margin-top: 0px; к твоей жизни это помогло мне. Не уверен, почему он не унаследовал настройку от ul, но, по крайней мере, исправляет вашу проблему:)

.HTMLBody = "<style> ul {margin-top:0px;} li {margin-left:50px;margin-top:0px;}</style> " _ & "Unbulleted Text" _ & "<br>" & "<br>" & "<b>Header</b>" _ & "<ul>" & "<li>" & "bullet one" _ & "</li>" & "<li>" & "bullet two" _ & "</li>" & "<li>" & "bullet three" _ & "</li>" & "</ul>" & "Unbulleted Text"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...