私たちのほとんどがおそらく知っているように、ブートストラップと財団は、フロントエンド開発フレームワークの中で現在のリーダーです。しかし、歴史は、最終的に何かがより良いものがやってくることを示しており、この場合はそれほど遠くないかもしれません。
この記事では、セマンティックUIと呼ばれるフレームワークランドスケープの新しい候補者を紹介します。セマンティックUIは、Less and JQueryを搭載した最新のフロントエンド開発フレームワークです。洗練された微妙でフラットなデザインの外観があり、軽量のユーザーエクスペリエンスを提供します。
セマンティックUIは、人間に優しいHTMLを強調する最新のフロントエンド開発フレームワークであり、BootstrapやFoundationなどの他のフレームワークと比較して、読みやすさと使いやすさを向上させるクラス名に自然言語を使用しています。
セマンティックUIのもう1つの強さは、最小限のニュートラルなスタイリングを使用しており、カスタマイズを開いたままにしていることです。おそらく使用しない追加機能を除外しながら、重要で有用なものが含まれています。さらに、フレームワークのコンポーネントはポータブルで自己完結型であるため、必要なもののみをつかんで使用できます。
セマンティックUIで構築されたウェブサイトがどのように見えるかを見るには、風変わりなものにアクセスできます。 わかりました。ここまでは順調ですね。しかし、このセマンティックUIの概要は、手を少し汚さずに完全に完全にならないと思います。それでは、今すぐセマンティックUIの甘さを味わえましょう。さまざまなセマンティックUIコンポーネントを使用して、素晴らしいサインイン/サインアップフォームを作成する方法を紹介します。
開始するには、ファイルをcomplete_form.htmlに変更し、form.htmlという空のファイルを作成します。それを開いて、次のHTMLを追加します:
始める前に、セマンティックUIの仕組みを考えてみましょう。すべてのコンポーネント定義は、UIのクラスに続いてコンポーネントの名前で始まります。たとえば、ボタン要素を追加するには、UIボタンのクラスを指定します。状態やバリエーションを追加するには、必要なクラスを挿入するだけです。たとえば、ホバーで色を青に変更するボタンを作成するには、Hover Stateクラスと青色のバリエーションクラスを追加します。
ここで、いくつかのスタイリングを追加する必要があります。現在空のスタイルのタグ内にコードを置きます。 次に、最初の列(HTMLコメントが「ここにフォーム」と書かれている)で、フォームのコードを追加します。フォームを作成するには、UIフォームのクラスでDivタグを追加します。次に、フィールドのクラスを備えた2つのDivタグを、インラインフィールドのクラスを備えたもう1つ、そして最後にUI Red Submit Buttonのクラスを備えた1つを配置します。最初の2つのフィールドは、usernameおよびパスワードの場合です。インラインになるようにフォーマットされている3番目のDIVで、チェックボックスを配置します。
また、フッターを適切にレンダリングするためにスタイリングを追加する必要があります。スタイルタグ内の既存のCSSの下に次のCSSを追加します。
ここに
セマンティックUIは、リアルタイムデバッグ出力やフィードやコメントなどの排他的なUIコンポーネントなど、他のフレームワークでは利用できないユニークな機能とコンポーネントを提供します。
最小限のニュートラルなデフォルトスタイリングを備えた広範なカスタマイズをサポートし、さまざまなデザインの好みに適応し、プロジェクト全体で柔軟な使用のためにコンポーネントがポータブルで自己完結型であることを保証します。
セマンティックUIは十分に文書化されており、スタイルガイドが含まれており、初心者がアクセスできるようにし、経験豊富な開発者が効果的に効果的に学習して実装します。
ご覧のとおり、セマンティックUIは、クラスの名前を付けるという点で意味があり、適切に構成されているだけでなく、コンポーネントの命名、定義、説明においても構成されています。この構造は、ブートストラップまたはファンデーションに見られるものと比較してはるかに意味的です。
ユーザーが「サインイン」するか「サインアップ」するかに応じて、ビューを切り替えるフォームを作成します。ビューがどのように見えるかは次のとおりです
最初にセマンティックUIをダウンロードし、ジップファイルを開き、「パッケージ化」と呼ばれるフォルダーを抽出します。 To Semantic UIフォームの例(または簡単に識別するために使用できる他の何か)の名前を変更します。
<span><span><!DOCTYPE HTML></span>
</span><span><span><span><html</span>></span>
</span><span><span><span><head</span>></span>
</span> <span><span><span><meta</span> charset<span>="utf-8"</span> /></span>
</span> <span><span><span><title</span>></span>Semantic UI Sign In/Sign Up Form<span><span></title</span>></span>
</span>
<span><span><span><link</span> href<span>="css/semantic.css"</span> rel<span>="stylesheet"</span> type<span>="text/css"</span> /></span>
</span>
<span><span><span><style</span> type<span>="text/css"</span>></span><span>
</span></span><span><span>
</span></span><span><span> </span><span><span></style</span>></span>
</span>
<span><span><span></head</span>></span>
</span><span><span><span><body</span>></span>
</span>
<span><!-- content will go here -->
</span>
<span><span><span><script</span> src<span>="https://code.jquery.com/jquery-1.10.2.min.js"</span>></span><span><span></script</span>></span>
</span> <span><span><span><script</span> src<span>="javascript/semantic.js"</span> type<span>="text/javascript"</span>></span><span><span></script</span>></span>
</span>
<span><span><span><script</span> type<span>="text/javascript"</span>></span><span>
</span></span><span><span>
</span></span><span><span> </span><span><span></script</span>></span>
</span><span><span><span></body</span>></span>
</span><span><span><span></html</span>></span></span>
<span><span><!DOCTYPE HTML></span>
</span><span><span><span><html</span>></span>
</span><span><span><span><head</span>></span>
</span> <span><span><span><meta</span> charset<span>="utf-8"</span> /></span>
</span> <span><span><span><title</span>></span>Semantic UI Sign In/Sign Up Form<span><span></title</span>></span>
</span>
<span><span><span><link</span> href<span>="css/semantic.css"</span> rel<span>="stylesheet"</span> type<span>="text/css"</span> /></span>
</span>
<span><span><span><style</span> type<span>="text/css"</span>></span><span>
</span></span><span><span>
</span></span><span><span> </span><span><span></style</span>></span>
</span>
<span><span><span></head</span>></span>
</span><span><span><span><body</span>></span>
</span>
<span><!-- content will go here -->
</span>
<span><span><span><script</span> src<span>="https://code.jquery.com/jquery-1.10.2.min.js"</span>></span><span><span></script</span>></span>
</span> <span><span><span><script</span> src<span>="javascript/semantic.js"</span> type<span>="text/javascript"</span>></span><span><span></script</span>></span>
</span>
<span><span><span><script</span> type<span>="text/javascript"</span>></span><span>
</span></span><span><span>
</span></span><span><span> </span><span><span></script</span>></span>
</span><span><span><span></body</span>></span>
</span><span><span><span></html</span>></span></span>
<span><span><span><div</span> class<span>="ui raised segment signin"</span>></span>
</span> <span><span><span><h3</span> class<span>="ui inverted blue block header"</span>></span> SIGN IN <span><span></h3</span>></span>
</span> <span><span><span><div</span> class<span>="ui two column grid basic segment"</span>></span>
</span> <span><span><span><div</span> class<span>="column"</span>></span>
</span> <span><span><span><div</span> class<span>="ui blue stacked segment"</span>></span>
</span> <span><!-- form here -->
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="ui vertical divider"</span>></span> OR <span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="center aligned column"</span>></span>
</span> <span><!-- Facebook button here -->
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="ui divider"</span>></span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="footer"</span>></span>
</span> <span><!-- text plus button here -->
</span> <span><span><span></div</span>></span>
</span><span><span><span></div</span>></span></span>
<span>body<span>, .ui.vertical.divider</span> {
</span> <span>color: #696969;
</span><span>}
</span>
<span><span>.ui.vertical.divider</span> {
</span> <span>margin: 0 4px;
</span><span>}
</span>
<span><span>.ui.raised.segment</span> {
</span> <span>background-color: #fffacd;
</span> <span>width: 600px;
</span> <span>margin-top: 0;
</span> <span>position: fixed;
</span> <span>left: 10px;
</span> <span>top: 10px;
</span><span>}</span>
<span><span><span><div</span> class<span>="ui form"</span>></span>
</span> <span><span><span><div</span> class<span>="field"</span>></span>
</span> <span><span><span><label</span>></span> Username <span><span></label</span>></span>
</span> <span><span><span><div</span> class<span>="ui left labeled icon input"</span>></span>
</span> <span><span><span><input</span> type<span>="text"</span>></span>
</span> <span><span><span><i</span> class<span>="user icon"</span>></span><span><span></i</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="field"</span>></span>
</span> <span><span><span><label</span>></span> Password <span><span></label</span>></span>
</span> <span><span><span><div</span> class<span>="ui left labeled icon input"</span>></span>
</span> <span><span><span><input</span> type<span>="password"</span>></span>
</span> <span><span><span><i</span> class<span>="lock icon"</span>></span><span><span></i</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="inline field"</span>></span>
</span> <span><span><span><div</span> class<span>="ui checkbox"</span>></span>
</span> <span><span><span><input</span> id<span>="remember"</span> type<span>="checkbox"</span>></span>
</span> <span><span><span><label</span> for<span>="remember"</span>></span> Remember me <span><span></label</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="ui red submit button"</span>></span> Sign In <span><span></div</span>></span>
</span><span><span><span></div</span>></span></span>
<span><span><span><h4</span> class<span>="ui header"</span>></span> Sign in with: <span><span></h4</span>></span>
</span><span><span><span><div</span> class<span>="ui facebook button"</span>></span>
</span> <span><span><span><i</span> class<span>="facebook icon"</span>></span><span><span></i</span>></span>
</span> Facebook
<span><span><span></div</span>></span></span>
<span><span><span><div</span> class<span>="text"</span>></span> Not a member? <span><span></div</span>></span>
</span><span><span><span><div</span> class<span>="ui vertical animated blue mini button signup"</span>></span>
</span> <span><span><span><div</span> class<span>="visible content"</span>></span> Join Us <span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="hidden content"</span>></span>
</span> <span><span><span><i</span> class<span>="users icon"</span>></span><span><span></i</span>></span>
</span> <span><span><span></div</span>></span>
</span><span><span><span></div</span>></span></span>
<span><span>.footer</span> {
</span> <span>text-align: right;
</span><span>}
</span>
<span><span>.text</span> {
</span> <span>display: inline;
</span><span>}</span>
<span><span><span><div</span> class<span>="ui raised segment signup inactive"</span>></span>
</span> <span><span><span><h3</span> class<span>="ui inverted blue block header"</span>></span> SIGN UP <span><span></h3</span>></span>
</span> <span><span><span><div</span> class<span>="ui blue stacked segment"</span>></span>
</span> <span><!-- form here -->
</span> <span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="ui divider"</span>></span><span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="footer"</span>></span>
</span> <span><span><span><div</span> class<span>="text"</span>></span> Already a member? <span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="ui vertical animated blue mini button signin"</span>></span>
</span> <span><span><span><div</span> class<span>="visible content"</span>></span> Log In <span><span></div</span>></span>
</span> <span><span><span><div</span> class<span>="hidden content"</span>></span>
</span> <span><span><span><i</span> class<span>="sign in icon"</span>></span><span><span></i</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span> <span><span><span></div</span>></span>
</span><span><span><span></div</span>></span></span>
<span><span><span><div</span> class<span>="ui form"</span>></span> </span> <span><span><span><div</span> class<span>="two fields"</span>></span> </span> <span><span><span><div</span> class<span>="field"</span>></span> </span> <span><!-- Username here --> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="field"</span>></span> </span> <span><!-- Email here --> </span> <span><span><span></div</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="two fields"</span>></span> </span> <span><span><span><div</span> class<span>="field"</span>></span> </span> <span><!-- Password here --> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="field"</span>></span> </span> <span><!-- Confirm Password here --> </span> <span><span><span></div</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="inline field"</span>></span> </span> <span><!-- checkbox here --> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="ui red submit button"</span>></span> Sign Up <span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="ui error message"</span>></span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
パスワードのコードがありますフィールド:
<span><span><span><label</span>></span> Username <span><span></label</span>></span> </span><span><span><span><div</span> class<span>="ui left labeled icon input"</span>></span> </span> <span><span><span><input</span> id<span>="username"</span> placeholder<span>="e.g., Tarzan"</span> type<span>="text"</span>></span> </span> <span><span><span><i</span> class<span>="user icon"</span>></span><span><span></i</span>></span> </span> <span><span><span><div</span> class<span>="ui corner label"</span>></span> </span> <span><span><span><i</span> class<span>="asterisk icon"</span>></span><span><span></i</span>></span> </span> <span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
のコードフィールド:があります
<span><span><span><label</span>></span> Email <span><span></label</span>></span> </span><span><span><span><div</span> class<span>="ui left labeled icon input"</span>></span> </span> <span><span><span><input</span> id<span>="email"</span> placeholder<span>="e.g., tarzan@jungle.org"</span> type<span>="text"</span>></span> </span> <span><span><span><i</span> class<span>="mail icon"</span>></span><span><span></i</span>></span> </span> <span><span><span><div</span> class<span>="ui corner label"</span>></span> </span> <span><span><span><i</span> class<span>="asterisk icon"</span>></span><span><span></i</span>></span> </span> <span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
また、リンクにスタイリングを追加します:
<span><span><span><label</span>></span> Password <span><span></label</span>></span> </span><span><span><span><div</span> class<span>="ui left labeled icon input"</span>></span> </span> <span><span><span><input</span> id<span>="password"</span> placeholder<span>="e.g., !@#$%^&*()_+:)"</span> type<span>="password"</span>></span> </span> <span><span><span><i</span> class<span>="lock icon"</span>></span><span><span></i</span>></span> </span> <span><span><span><div</span> class<span>="ui corner label"</span>></span> </span> <span><span><span><i</span> class<span>="asterisk icon"</span>></span><span><span></i</span>></span> </span> <span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
<span><span><span><label</span>></span> Confirm Password <span><span></label</span>></span> </span><span><span><span><div</span> class<span>="ui left labeled icon input"</span>></span> </span> <span><span><span><input</span> id<span>="confirm-password"</span> placeholder<span>="e.g., !@#$%^&*()_+:)"</span> type<span>="password"</span>></span> </span> <span><span><span><i</span> class<span>="lock icon"</span>></span><span><span></i</span>></span> </span> <span><span><span><div</span> class<span>="ui corner label"</span>></span> </span> <span><span><span><i</span> class<span>="asterisk icon"</span>></span><span><span></i</span>></span> </span> <span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
<span><span><span><div</span> class<span>="ui checkbox"</span>></span> </span> <span><span><span><input</span> id<span>="terms"</span> type<span>="checkbox"</span>></span> </span> <span><span><span><label</span> for<span>="terms"</span>></span> I agree to the <span><span><a</span> href<span>="#"</span>></span> Terms and Conditions <span><span></a</span>></span><span><span></label</span>></span> </span><span><span><span></div</span>></span></span>
よくやった!これはかなり単純な例であり、それを使用すると、セマンティックUIの機能の表面を傷つけただけです。
ご覧のとおり、Semantic UIは、新しい、新鮮で、いくつかの面で、フロントエンド開発フレームワークの風景にユニークな追加であるというものです。ここで考えたことから、この執筆時点では数ヶ月しかありませんが、今年の多くの開発者のウォッチリストに載るに値することが非常に有望であることがわかります。 もう一度、ここから完全なチュートリアルファイルをダウンロードして、完全なセマンティックUIライブラリを解凍するときに「パッケージ化された」フォルダー内に追加することを忘れないでください。
セマンティックUIコンポーネントライブラリに関するよくある質問(FAQ)
セマンティックUIは、人間に優しいHTMLのために他のUIライブラリから際立っています。より速く、より直感的な開発が可能になります。セマンティックUIのクラスは、名詞/修飾子関係、語順、複数などの自然言語の構文を使用して、概念を直感的にリンクします。これにより、コードは初心者であっても読みやすく理解しやすくなります。これを行うには、NPMコマンド:NPMインストールSemantic-UIを使用できます。インストール後、セマンティックUI CSSとJavaScriptをプロジェクトにインポートできます。次に、htmlでセマンティックUIコンポーネントの使用を開始できます。
反応でセマンティックUIを使用できますか?セマンティックUIの公式React統合であるSemantic UI Reactと呼ばれる特定のライブラリがあります。 ReactアプリケーションでセマンティックUIコンポーネントとテーマを直接使用できます。ファイル。このファイルは、すべてのテーマの変数の中心的な設定として機能します。変数の値を変更して、テーマの外観をカスタマイズできます。一般的なものには、ボタン、アイコン、ヘッダー、仕切り、ラベル、リスト、カードが含まれます。各コンポーネントには、独自のバリエーションのセットとカスタマイズのオプションが付属しています。
セマンティックUIの公式の角度統合はありませんが、プロジェクトにセマンティックUI CSSとJavaScriptファイルを手動で含めることにより、Angularで使用できます。 セマンティックUIを更新するにはどうすればよいですか?NPMアップデートSemantic-UIコマンドを実行してセマンティックUIを更新できます。これにより、セマンティックUIが最新バージョンに更新されます。セマンティックUIの代替品は何ですか?セマンティックUIの代替品には、ブートストラップ、ファンデーション、マテリアルUI、およびBULMAが含まれます。これらのライブラリにはそれぞれ独自の長所と短所があるため、最良の選択は特定のニーズと好みに依存します。
以上が紹介:セマンティックUIコンポーネントライブラリの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。