>我们大多数人可能都知道,自举和基金会是前端开发框架中现有的领导者。但是历史向我们表明,最终会出现更好的事情,在这种情况下,可能不会那么遥远。
本文将向您介绍框架景观上的新候选人,称为语义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>
>
>在开始之前,让我们考虑语义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>
<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中文网其他相关文章!