Пользовательские шрифты в Stripe должны быть загружены через HTTPS. Ни файл определения font-face, ни базовые файлы пользовательских шрифтов не обслуживаются надежно:
<b>http://</b>db.onlinewebfonts.com/c/0abeb2471faeb5269db428b9eac2075e?family=GT+Walsheim+Pro+Regular
@font-face {font-family: "GT Walsheim Pro Regular";
src: url("<b>http://</b>db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.eot"); /* IE9*/
src: url("<b>http://</b>db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
url("<b>http://</b>db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.woff2") format("woff2"), /* chrome firefox */
url("<b>http://</b>db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.woff") format("woff"), /* chrome firefox */
url("<b>http://</b>db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.ttf") format("truetype"), /* chrome firefox opera Safari, Android, iOS 4.2+*/
url("<b>http://</b>db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.svg#GT Walsheim Pro Regular") format("svg"); /* iOS 4.1- */
}
Исправление заключается в том, чтобы обслуживать как файл font-face, так и ресурсы базового шрифта, используя HTTP. В качестве быстрого примера, чтобы увидеть, как он работает, вы можете взять один из файлов woff
и предоставить его Stripe следующим образом:
var elements = stripe.elements({
fonts: [
{
family: "GT Walsheim Pro Regular",
src:
"url(https://db.onlinewebfonts.com/t/0abeb2471faeb5269db428b9eac2075e.woff)",
weight: "500",
},
],
});
Обратите внимание, что я обновил протокол с одного из ресурсов до https://
.
С этим изменением шрифты правильно загружаются в iframe, как показано ниже:
Надеюсь, это поможет!