紹介:セマンティックUIコンポーネントライブラリ
私たちのほとんどがおそらく知っているように、ブートストラップと財団は、フロントエンド開発フレームワークの中で現在のリーダーです。しかし、歴史は、最終的に何かがより良いものがやってくることを示しており、この場合はそれほど遠くないかもしれません。
この記事では、セマンティック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 サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます
