>我們大多數人可能都知道,自舉和基金會是前端開發框架中現有的領導者。但是歷史向我們表明,最終會出現更好的事情,在這種情況下,可能不會那麼遙遠。
本文將向您介紹框架景觀上的新候選人,稱為語義UI。語義UI是一個現代的前端開發框架,由Limes和Jquery提供支持。它具有時尚,微妙和平坦的設計外觀,可提供輕巧的用戶體驗。
根據語義UI網站的說法,該框架的目標是通過創建共享UI的語言來增強設計師和開發人員的能力。他們通過利用語義,描述性語言的班級和命名慣例來做到這一點。它沒有像其他框架那樣使用縮寫,而是以更接近普通英語的方式使用真實詞。鑰匙要點
語義UI是一個現代的前端開發框架,強調對人類友好的HTML,與其他框架(如Bootstrap和Foundation)相比,使用自然語言來增強可讀性和易用性。
>該框架是圍繞五個描述性類別結構的:UI元素,UI集合,UI視圖,UI模塊和UI行為,這些行為有助於構建多樣的和交互式的Web接口。> 關於語義UI的第二個獨特之處在於,它提供了其他框架中不存在的獨家功能和組件。例如,在UI視圖組件或側邊欄中的饋送和評論,以及UI模塊的形狀。另外,在與語義UI組件進行交互時,您將獲得實時調試輸出。只需打開您的網絡控制台,您就會看到您的組件準確地交流了他們的工作。 語義UI的另一個優勢是它使用最少和中性的樣式,從而使您開放自定義。它包括重要且有用的東西,同時遺漏了您可能永遠不會使用的其他功能。另外,該框架的組件是便攜式和獨立的,因此您只需抓取並使用所需的組件。
>該框架將EM和REM單元用於其元素,使其完全響應並適應任何尺寸。您只需要更改基本字體,所有其他元素都會相應調整。>最後,語義UI的記錄很好,網站為不同組件提供了許多示例。此外,它還有一個樣式指南,其中包含有關如何編寫代碼的技術和指示。所有這些使學習框架成為無痛的體驗。
要查找語義UI如何與其他項目集成,並查看集成頁面。
>查看使用語義UI構建的網站看起來如何訪問Quirky。
>好。到目前為止,一切都很好。但是我認為,如果沒有使我們的手有點臟的話,這種語義UI的概述將無法完全完成。因此,讓我們現在品嚐語義UI的甜味。我將向您展示如何使用各種語義UI組件創建一個很棒的標誌/註冊表單。
>>我們將根據用戶要“登錄”還是“註冊”來創建一個表單,以切換視圖。這是視圖的外觀:
>首先下載語義UI,打開zpipted文件,然後提取稱為“打包”的文件夾。重命名為語義UI形式的示例(或您可以輕鬆識別它的其他內容)。
>>要查看我們表單示例的工作演示,只需下載完整的form.html文件,然後將其放入語義UI表單示例文件夾中即可。在瀏覽器中打開form.html文件,然後使用表格播放以獲取它的感覺。現在,我將向您展示如何通過顯示和解釋所涉及的代碼來重新創建表單。
啟動,將文件重命名為完整_form.html,然後創建一個名為form.html的空文件。打開它並添加以下html:
<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>這是我們的起始模板。它鏈接到smantic.css and smantic.js文件,並添加了jQuery庫的引用。它還具有我們要添加的JavaScript和CSS的腳本和样式標籤。我僅出於學習目的而在內部使用JavaScript和CSS,因為它更容易,並且您無需在多個文件之間跳躍。但是在現實世界項目中,使用外部文件總是最好的。
>
>在開始之前,讓我們考慮語義UI的工作方式。所有組件定義以UI類開始,然後是組件的名稱。例如,要添加一個按鈕元素,您只需給它一個UI按鈕即可。要添加狀態和/或變化,只需插入所需的類即可。例如,要創建一個將其顏色更改為懸停在藍色上的按鈕,請添加懸停狀態類和藍色變化類:UI懸停藍色按鈕。>讓我們回到我們的形式。我不會解釋每個班級的作用,因為這些班級或多或少具有自我描述性,您可以在文檔中看到更多的含義。
>
>我們需要做的第一件事是添加一個段元素,該元素將包含我們的表格。我們通過添加一個帶有UI升高段符號的DIV標籤來做到這一點。對於表格的標題,我們使用帶有UI類倒置藍色塊標頭的H3標籤。接下來,我們創建一個兩列網格,在列之間具有垂直分隔線。在第一列中,我們添加了一個帶有UI藍色堆疊段的DIV,該段將保持我們的形式元素。在底部,我們將另一個分隔元素和一個帶有一類頁腳的div。<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>
接下來,在第一列中(HTML評論說“在此處”),我們為表單添加了代碼。為了創建表單,我們添加了一個使用一類UI表單的DIV標籤。然後,我們將每個字段的又有兩個字段放置兩個DIV標籤,另一個帶有一類直列字段的字段,最後一個帶有一個UI紅色提交按鈕的字段。前兩個字段用於>用戶名和password。在格式為內聯的第三個Div中,我們放置了一個複選框。
><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>
>在第二列中,具有類中心對齊列(HTML評論說“ Facebook按鈕”),我們使用H4標題並添加Smantical UI的Facebook Social按鈕: >我們通過添加一些文本和一個動畫按鈕來完成頁腳,該按鈕將我們的表格從登錄中切換為註冊。以下html添加了html評論“此處的文本加”按鈕:
接下來,我們將在段元素內部的表單中添加代碼,在html中,我們剛剛添加(其中HTML評論在其中說“在此處”)。帶有類UI錯誤消息的DIV放置在表單的末尾,因為我們以後將添加的表單驗證行為要求其向用戶顯示錯誤。 請注意,上述HTML中的每個字段元素都有一個註釋,指示我們將在每個表格中添加的哪個部分。讓我們現在就這樣做。 >用戶名 >
這是 >
這是
這是>確認密碼
和復選框的代碼:>
做得好!這是一個相當簡單的示例,因此我們只刮擦了語義UI的功能的表面。 再次,您可以在此處下載完整的教程文件,並在解壓縮完整語義UI庫時記住將其添加到“打包”文件夾中。
>是的,可以將語義UI與React一起使用。有一個特定的庫,稱為語義UI React,它是語義UI的官方反應集成。它允許您直接在React應用程序中使用語義UI組件和主題。 <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>
>我們還需要添加一些樣式來正確渲染頁腳。在我們的樣式標籤中的現有CSS下方添加以下CSS:<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>
我們的表格看起來不錯 - 但是如果用戶鍵入無效值怎麼辦?我們需要添加驗證。我們通過在腳本標籤中添加以下代碼來做到這一點,在我們剛剛添加的代碼之後:
<span>a {
</span> <span>text-decoration: none;
</span> <span>color: #1E90FF;
</span><span>}</span>
>
結論
如您所見,語義UI是一個新的,新鮮的,在某些方面是前端開發框架的景觀的獨特添加。從我們在這裡考慮的情況來看,儘管在撰寫本文時,只有幾個月大,您可以看到這是很有希望的,值得在今年的許多開發人員觀看列表中。
>如何在語義UI中自定義主題?
語義UI允許您通過修改theme.config來自定義主題。文件。該文件充當所有主題變量的中心設置。您可以更改變量的值以自定義主題的外觀。
在語義UI中有哪些常見組件?一些常見的包括按鈕,圖標,標題,分隔線,標籤,列表和卡片。每個組件都有自己的自定義的一組變化和選項。 >如何將語義UI用於響應式設計?
雖然沒有官方的角度集成用於語義UI,但您仍然可以通過手動將其與Angular一起使用,包括您項目中的語義UI CSS和JavaScript文件。
>>
語義UI的一些替代方法?這些圖書館中的每一個都有其自己的優點和劣勢,因此最佳選擇取決於您的特定需求和偏好。以上是介紹:語義UI組件庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!