PixiJS のバッジを見て、「どうすれば console.log で画像を表示する」ことができるのか、と気になったので試してみました。
画像も文字装飾も表示できました。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>console.log 表示テスト</title>
</head>
<body>
<script src="./js/index.js"></script>
</body>
</html>
スクリプトを読み込ませているだけの白紙ページです。
console.log(' %cCAFEBABE', `
color: #662200;
font-size: .8rem;
padding: .2rem .4rem;
`);
console.log('%c ', `background-image: url("data:image/png;base64,iVBORw ... 略 ... 5CYII=");
background-size: contain;
background-position: center center;
background-repeat: no-repeat;
border: solid 1px #999;
padding-right: 100px;
padding-bottom: 121px;
`);
console.log(' %cCAFEDEAD', `
background-color: #662200;
color: #ffffff;
font-size: .8rem;
padding: .2rem .4rem;
`);
以下の3つの console.log
を用意。
いくつかポイントを。
%c
( C言語 の printf
で見るような出力変換指定子)%c
で置換された文字列にスタイルが適用できるこれを踏まえて、
%c
を混ぜた文字列を console.log
の第一引数に指定%c
を第一引数に指定background-image
を指定する
url()
のパラメータは URL 形式
という形に。
理屈が分かればサクッとできるので遊ぶにはちょうど良さそうです。
Chrome 系のブラウザ以外では表示崩れが発生するので、あくまで Chrome だけ、と考えた方が良さそうです。
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント