Autor Zpráva
radekt
Profil
Dobrý den,
narazil jsem na pro mně divné chování Bootstrap responsivního menu. Když na mobilu (nebo ve zmenšeném okně prohlížeče) zobrazím stránku, nezobrazuje se hamburger menu. Když si zobrazím zdrojový kód této stránky a uložím ho do html sem, tak se hamburger menu zobrazí. Setkal jste se s tím někdo, čím to může být¨?

Radek Tůma
TomášK.
Profil *
Koukni se na chyby v konzoli prohlížeče. Server odesílá hlavičku Content-Security-Policy:, kterou definuje, odkud se můžou načítat obrázky. Nekontroloval jsem, jestli to je hamburger, ale nějaký obrázek se kvůli tomu nenačte. Uložená stránka hlavičky neobsahuje.
radekt
Profil
Díky moc,
to jsem úplně přehlédl. V CSS Boostrapu je tato cesta:

background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");

Což je pro mně, přiznám se, španělská vesnice. Samozřejmě můžu z bezpečnostních hlaviček img-src úplně vypustit a je po problému, ale stejně by mě zajímalo, jak to v nich ošetřit. Případně jak to svg stáhnout.
Keeehi
Profil
Mělo by stačit tam přidat data:
img-src 'self' data:;
radekt
Profil
Keeehi:
Smekám klobouk a díky moc, funguje to. A zeptám se na bezpečnost - předtím jsem tam měl povolené skripty, styly, obrázky pro lokál, Google a Facebook. Není nebezpečí, že by na stránky přes data: mohlo dostat i něco, co tam nemá co dělat?
Keeehi
Profil
radekt:
V důsledku se tam teoreticky mohou dostat jen obrázky, co by tam neměly co dělat.
radekt
Profil
Přemýšlel jsem o tom, jak z té cesty k svg v CSS dostat nějakou adresu, kde ty obrázky jsou a tu pak povolit a nebo jak se dostat k fyzickému umístění toho obrázku, ten si dát na web a bylo by vymalováno. Ale myslím, že to takhle úplně stačí a nebezpečí je zřejmě minimální. Pokud se obnoví tradice srazů DJPW a sejdeme se tam, máš u mně pivo.
Ještě jednou díky moc.
Bubák
Profil
radekt:
jak se dostat k fyzickému umístění toho obrázku
Fyzicky je ten obrázek v atributu data. dostat z toho soubor jde mnoha způsoby, asi nejjednodušší je data zkopírovat (vše mezi uvozovkami, zdejší obarvovač kódu data označil červeně), vložit v Chrome do adresního řádku a pak naa obrázek kliknout pravým tlačítkem a dát Uložit jako, nezapomenout ke jménu souboru příponu dát .svg
Ve Firefoxu je postup podobný, ale IE popsaný postup nefunguje.
Co to vlastně je: Data URI
radekt
Profil
Bubák:
Perfektní, děkuji.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: