2016-07-20 4 views
-3

私はわずか2ヶ月間ソフトウェア開発者として働いています。私は大企業の携帯電話プランを管理する会社に雇われました。私は主に、一緒に働く2つのWebアプリケーション、ユーザーがログインして新しいデバイスを注文したり、デバイスをアップグレードしたり、デバイスを一時停止することができる「フロントエンド」で作業します。また、スーパーバイザがログインしてフロントエンド(つまり、ユーザ、携帯電話のバンドル)のさまざまな側面を変更できる「バックエンド」。ユーザー設定可能なCSSの色

私はフロントエンドの主要なUI要素の色を構成する機能をバックエンドに与え、ユーザーのポータルを会社の色と一致させることができます。

さまざまな要素の色がどこで設定されているのかを特定するためにスタイルシートを使用していましたが、ユーザーごとにスタイルシートの変更をどのように実装できるかわかりません。任意のアイデアや提案をいただければ幸いです。

+0

クッキーを調べる必要があります。 –

答えて

0

これを行うにはいくつかの方法があります。


おそらく最も簡単な方法はJavascriptです。ユーザーがカラースキームを選択すると、それを記録して(おそらくAJAXリクエストを介して)クライアントJavascriptに送信すると、JavaScriptは自動的にスタイルをインラインstyle="..."タグを介して直接適用するか、スタイルシートに直接結びつけるクラスを適用します - 可能なすべてのカラースキームがロードされています。これは、このソリューションが少し落ちる場所です。

すべてのカスタムスタイルをインライン展開していますが、これは悪い習慣であるか、またはスタイルシートがの方法より大きくなるはずです。そして、そのサウンドから、彼らは単に比較的簡単な「テーマ」がほしいというだけではなく、実際にカラーピッカーから色を選んでテーマをテーマにしたいと考えています。


SASSを使用して、動的にスタイルシートを動的に生成することもできます。

$color_table_header: [...]; 
$color_table_footer: [...]; 

$color_header_basic: [...]; 

... 

をし、どのような他の作品の軽量のNode.jsサーバーのいくつかの並べ替えを経て、動的にこれらの色で塗りつぶし:このようなSASS可変シート(これは、動的に生成された部分である)何かを持っています。これは、カスタムカラーを必要とするユーザごとにユーザごとにスタイルシートを生成する必要があるため、もう少しストレージを必要とします。つまり、テーマごとにフルページスタイルシートを生成するのではなく、カスタムユーザーテーマ用に生成するスタイルシートは、既存のプライマリスタイルシートを上書きするだけで済みます。

次に、ユーザーがカスタムスタイルを持っているかどうかを確認し、ページビューを変更して通常のスタイルシートに加えてスタイルシートを提供します。

関連する問題