CS-Cart.jp開発者ドキュメント
  • はじめに
  • Getting Started
    • CS-Cart開発者向け注意事項
    • CS-Cartの構成
    • デバッグ方法
  • コア
    • Hooks
    • コントローラー
      • Pre&Post コントローラー
    • データベース
      • データベースの構造と命名規則
      • データベース・プレイスホルダー
      • 他のデータベースへの接続
    • ショップフロント
      • ブロック
      • blockメインスキーマ—
      • Dynamic Objects
      • ajaxリクエストの使用方法
      • 特別なCSSセレクター
      • マイクロフォーマット Microformats
      • 通知システム
      • ツールチップ
    • 設定
    • コア関数
    • イベントの通知
    • 言語変数
    • スキーマー
  • アドオン開発
    • フック
      • PHPフック
      • テンプレートフック
    • アドオンチュートリアル
      • 「Hello World」チュートリアル
      • Advanced Add-on チュートリアル
      • 商品リスト、詳細ページのカスタムテンプレートを作成
      • 支払方法の開発
    • アドオンの管理プロセス
    • Add-on スキーマー
      • アドオンの互換性
      • 他のアドオンとの競合・依存設定
    • APIの拡張
    • スキーマーの拡張
    • アドオンのディレクトリ構造
    • アドオンの言語変数
    • .poファイルによる言語ファイルの作成
  • テーマ開発
    • テーマ開発の概要
    • テーマの複製
    • レイアウトの管理
    • トップパネルとヘッダー
    • テーマを使用したショップの設定の変更
    • CSS
    • テーマの言語変数
    • メディアファイル
    • 親テーマ
    • スタイルとビジュアルエディター
    • レイアウトエディター
    • テンプレート
  • デバッグ
    • デバッガー
    • ファイルエディター
GitBook提供
このページ内
  • LESS
  • Variables(変数)
  • Mixins(ミックスイン)
  • Operations(演算)
  • Functions(関数)
  • Nested rules(入れ子)
  • CSSディレクトリ構造
  • レスポンシブレイアウトに使用されるスタイル:
  • CSSやLESSファイルの継承順
  1. テーマ開発

CSS

CS-Cartで利用されているCSS関連技術の概要

前へテーマを使用したショップの設定の変更次へテーマの言語変数

最終更新 7 か月前

LESS

<画像>

CS-Cartのレイアウトスタイルは_LESS_を用いて書かれています。 LESSは、非常に便利なCSSプリプロセッサです。

LESSについての詳しい情報は以下のサイトで読むことができます:

(英語) (日本語)

CS-Cartでは、すべてのLESSの機能が使用出来るわけではありません。 どのような機能が使われているのかを理由とあわせて説明します。

Variables(変数)

変数を作成し、複数の場所で同じプロパティ値を使用することが出来ます。

例:

@price: #343434;

CS-CartのLESS変数はテーマのスタイルコンセプトに関連しています。( の項目を参照してください。)

CS-Cartがインストールされているディレクトリ以下の_design/themes/THEME_NAME/styles/data_ディレクトリにビジュアルエディタと関連のあるLESS 変数が含まれた .lessファイルがあります。

これらの値はファイルを直接編集するか、ビジュアル·エディタで編集することができます。

このディレクトリの_.less_ファイルの変数値はこのファイルでのみ編集可能です。

例えば、styles.lessファイルで定義された@price 変数は作動しません。 なぜなら、.../styles/data/.less ファイルに書かれた変数の値は、一番最後に読み込まれるためです。

Mixins(ミックスイン)

LESSにはMixinという複数のプロパティをまとめる機能があります。ミックスインはただのプロパティ値のひとつとしてクラス名を含む他のクラス内の全てのクラスのプロパティを含むことができます。

ミックスインは関数のように動作し、次の例のように引数を取ることができます:

rounded-corners (@radius: 5px) {
    border-radius: @radius;
    -webkit-border-radius: @radius;
    -moz-border-radius: @radius;
}

#header {
    .rounded-corners{
      .rounded-corners(10px);
    }
    #footer {
      .rounded-corners(10px);
    }
}

Bootstrap2.3のミックスインのセットがCS-Cartでは使用されています。

design/themes/responsive/css/tyghディレクトリのファイルにあるmixins.lessファイルに保存されています。

このファイルには、Utility mixinsとComponent mixinsがあります。

  • Utility mixins - 特定の使用目的のためのシンプルなミックスイン

  • Component mixins - グリッドを形成するために使用される複雑なミックスイン

ミックスインはCSSルールの記述を少なくすることが出来ます。ブラウザのベンダープレフィックスを用いるCSSプロパティのために使用されています。

Operations(演算)

この機能により、CSSルール内の数学的演算が可能です: たし算、引き算、かけ算、割り算

例:

width: (900 / @columns)px;

Functions(関数)

LESSは、カラーコード、数学関数、関数を操作するための一連の関数が含まれています。

CS-Cartで使用されている操作:

  • lighten(@color, 10%) - 現在の色よりも10%明るい色を返します。

  • darken(@color, 10%) - 現在の色よりも10%暗い色を返します。

これらの操作は、スタイルとビジュアル·エディタに関連しています。

一つのベース色を基本色を明るくしたり、暗くしたりすることによって、他の要素の色を変更することができます。

  • percentage(0.5) - パーセント値に変換します。グリッドと列の作成中に使用されます。

Nested rules(入れ子)

「入れ子」は別の一つのCSSルールを囲むことが可能です。

ブラウザの開発ツールでの作業を複雑にしたのでCS-Cartでは、 ネストされたルールはほとんど使用されていません。

開発者ツールからコピーされネストされたルールを探す時、親ルールを考慮する必要があります。

CS-CartではLESSのすべてが動作するわけではないことに注意してください。

CSSディレクトリ構造

利用中のテーマのCSSディレクトリへのパスは_design/themes/THEME_NAME_です。

  • css/addons directory - アドオンで追加されるスタイル

  • css/lib directory - 他のライブラリのスタイル。Jqueryライブラリのスタイルがあります。

  • css/typh directory - コア・スタイル

    • css/typh/reset.less - スタイルのリセット。Normalize.cssが使用されています。

    • css/typh/print.less - 印刷用のスタイル

    • ss/flags.less - 国旗用スタイル

    • css/design_mode.less - テンプレートやデザイン・モードで使用されているスタイル

    • css/theme_editor.less - ビジュアルエディタで使用されるスタイル

    • css/grid.css - 固定レイアウトのためのグリッドを形成するために使用される言語変数やミックスイン

    • css/mixins.less - LESSミックスインのセット

 

レスポンシブレイアウトに使用されるスタイル:

  • css/responsive-utilities.less - 表示または異なるデバイスの画面解像度のコンテンツを非表示にするために使用されているBootstrapクラス。

  • css/responsive.less - 異なる画面解像度のために使用されるスタイル。

主なファイルは_styles.less_です。テーマのスタイルが含まれています。css/typh に格納されたファイルは、@importオペレーターと_styles.less_ に含まれています。

CSSやLESSファイルの継承順

  1. design/themes/basic/templates/common/styles.tpl

  2. <style></style>タグでdesign/themes/basic/templates/common/styles.tplテンプレートに追加されたすべてのインラインスタイル。

  3. プリセットされたlessファイルが含まれています。

  4. ビジュアル·エディタのカスタムCSSフィールドに追加されたもの。

  5. アドオンのスタイルはプライオリティによって定義された順序で処理されます。

HTTPリクエスト数を減らすためにすべてのファイルが1つのcssファイル集約されます。

不便な点があるといえば、そのスタイルが書かれているファイルそのものを検索することです。:ファイルとdevツールを使用して検索するときに、各ファイルの行を検索することは出来ません。

その他のLESSの可能性については公式サイトで見ることができます:

http://lesscss.org/features/
http://less-ja.studiomohawk.com/
Styles and Visual Editor
http://lesscss.org/features/