メインコンテンツにスキップ

CSS から JS Style へのコンバーター

CSS宣言を React インラインスタイルオブジェクト、React Native StyleSheet、または styled-components/Emotion css テンプレートリテラルに変換 — また、JS スタイルオブジェクトを通常の CSS に変換し戻します。

入力

出力

出力
 
役に立ちましたか?

このツールを使う他の方法

REST API

curl -X POST https://api.iotools.cloud/v1/tool/css-to-js-style-converter \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "conversionDirection": "css-to-js",
    "outputFormat": "react-inline",
    "cssInput": "background-color: #3b82f6;\nfont-size: 16px;\nopac…"
  }'

ご自身のアカウントのキーに差し替えてください。ツールのフィールドがそのままリクエストボディになります——ラッパーはありません。

AIエージェントに依頼する

Use the IOTools `css-to-js-style-converter` tool (CSS to JS Style Converter) on this input:

YOUR_INPUT_HERE

IOTools MCPサーバーに接続された任意のエージェントにこれを貼り付け、入力内容を追加してください。

埋め込みウィジェット

<iframe
  src="https://iotools.cloud/embed/css-to-js-style-converter/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="CSS から JS Style へのコンバーター — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

ご自身のページに貼り付けるだけ——無料、キー不要、リンクを掲載するだけです。

API/MCP 1回あたりの費用5クレジットから
クレジットが足りませんか?料金を見る

次の方法でも利用可能

ガイド

このツールについて

CSS宣言のブロックを貼り付けると、すぐに使える JavaScript スタイルオブジェクトが戻ってきます — または逆に、JS スタイルオブジェクトを通常の CSS に変換します。このツールは、モダン JavaScript UI コードに CSS が表示される 3 つの方法をターゲットにしており、プロパティ名と値のルールが異なります:

  • React インラインスタイルstyle プロップ用の camelCase キー(backgroundColorfontSize)を持つプレーンオブジェクト。数値ピクセル値は、React が自動的に px を追加する場所(fontSize: 16)の裸の数字に変換されますが、opacityfontWeight などのユニットレスプロパティは、CSS 自体がそれらをユニットレスとして扱うため、数値のままです。
  • React Native StyleSheetStyleSheet.create({ container: { ... } }) でラップされた同じ camelCase 変換。レイアウトプロパティ(widthmarginpaddingborderRadiusfontSize など)は px サフィックスが削除されます。React Native の測定値は慣例によってユニットレスの数字だからです。
  • styled-components / Emotion — タグ付きテンプレートリテラル(const styles = css`...`;)。他の 2 つの形式とは異なり、プロパティ名は元の kebab-case のままで、値は逐語的にコピーされます — styled-components と Emotion はテンプレートリテラル内の実際の CSS 構文を解析するため、camelCase 変換または数値強制は行われません。

変換方向 を JavaScript → CSS に切り替えるとプロセスが逆になります。JS スタイルオブジェクト(引用符で囲まれていないキー、文字列型または数値型の値)を貼り付けると、標準的な property: value; CSS 行が返されます。数値は、ユニットレスプロパティ(opacityzIndexflexlineHeight など)の 1 つでない限り、ピクセルに再拡張されます。これらのプロパティはプレーンな数字として書き戻されます。

使い方

  1. 変換方向 を選択します — CSS → JavaScript または JavaScript → CSS。
  2. CSS → JavaScript の場合は、出力形式 を選択します:React インラインスタイル、React Native StyleSheet、または styled-components/Emotion。
  3. CSS 宣言(または JS スタイルオブジェクト)を入力ボックスに貼り付けます。property: value; 行のようにゆるく貼り付けるか、selector { ... } ブロック内でラップできます。
  4. 入力時に出力が自動的に更新されます。

FAQ

なぜ React では font-size: 16pxfontSize: 16 になるのに、styled-components では font-size: 16px のままなのか? React のインライン style プロップは、ほとんどのプロパティの裸の数字をピクセルとして扱うため、ツールは px を削除します。styled-components と Emotion はリテラル CSS テキストをレンダリングするため、単位は残る必要があります。

React Native ではどのプロパティが px を保持しますか? React Native が数字を期待するものだけです:寸法、間隔(margin*padding*)、位置オフセット、ボーダー幅/半径、fontSizeletterSpacing、およびギャッププロパティ。それ以外はすべて文字列として引用符で囲まれます。

ベンダープレフィックス付きプロパティを処理しますか? はい — -webkit--moz--ms--o- プレフィックスは JS の同等物(WebkitTransformMozTransformmsTransformOTransform)に変換されます。

完全な CSS セレクターまたはネストされたルールを理解していますか? いいえ — ゆるく入力されたか、単一の { ... } ブロックでラップされているかにかかわらず、宣言のみを読み取ります。セレクター、メディアクエリ、ネストされたルールは解析されません。

CSS カスタムプロパティ(--my-var)はどうなりますか? カスタムプロパティを定義する宣言(-- で始まる)は CSS → JS 方向でスキップされます。値として var(--my-var) を使用することは保持されます。

プライバシー

このツールはブラウザー内で完全に実行されます — CSS と JavaScript はデバイスから離れることもサーバーに接することもありません。

cssjavascriptreactreact-nativestyled-componentsemotioncss-in-jsconverter

ツールが気に入りましたか?広告をなくしましょう。

1回のお支払いでアカウントから広告が完全になくなります。サブスクリプションも追跡もありません。