门户网站构建CSS框架的规则

当我们构建门户网站时,CSS框架是必不可少的,因为它能够使网站的样式表现更为一致和美观。下面是建立门户网站 CSS 框架的规则和示例说明。

规则

  1. 样式重置: 不同浏览器的默认样式各不相同,为了让不同页面在不同浏览器上展示相同的外观,首先需要进行样式重置。
  2. BEM 命名规范:使用 BEM 命名约定可以让代码更为清晰、易于理解和维护。BEM 规范是由块 (block)、元素 (element) 和修饰符 (modifier) 三部分组成,格式为 .block__element--modifier
  3. 媒体查询:当网站在不同分辨率下的显示效果不同,为了避免出现页面排版混乱的情况,需要使用最小宽度媒体查询,以便根据屏幕宽度应用 CSS 样式。
  4. 样式表压缩:在网站部署前需要对样式表进行压缩,以减小文件大小并加速页面加载速度。

示例

下面是两个示例,以帮助更好的理解规则。

示例 1

在门户网站上,有一个标题栏,包含两个链接:登录和注册。根据以上规则,可以按照如下步骤编写代码。

  1. 编写 HTML 代码,使用 BEM 命名约定。
<div class="header">
   <a class="header__login" href="#">登录</a>
   <a class="header__register" href="#">注册</a>
</div>
  1. 编写 CSS 样式,应用样式重置、媒体查询和样式表压缩。
/* 样式重置 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
   margin: 0;
   padding: 0;
   border: 0;
   font-size: 100%;
   font: inherit;
   vertical-align: baseline;
}

/* BEM 命名规范 */
.header {
   display: flex;
   justify-content: flex-end;
   align-items: center;
   height: 50px;
   background-color: #333;
   color: #fff;
}

.header__login, .header__register {
   text-decoration: none;
   color: inherit;
   margin-right: 20px;
}

/* 媒体查询 */
@media screen and (max-width: 768px) {
   .header {
      justify-content: center;
   }
}

/* 样式表压缩 */
.header{display:flex;justify-content:flex-end;align-items:center;height:50px;background-color:#333;color:#fff}.header__login,.header__register{text-decoration:none;color:inherit;margin-right:20px}.@media screen and (max-width:768px){.header{justify-content:center}}

示例 2

在门户网站上还有一个分页器,根据以上规则,可以按照如下步骤编写代码。

  1. 编写 HTML 代码,使用 BEM 命名约定。
<div class="pagination">
  <a class="pagination__link pagination__link--prev" href="#">上一页</a>
  <a class="pagination__link pagination__link--number" href="#">1</a>
  <a class="pagination__link pagination__link--number pagination__link--active" href="#">2</a>
  <a class="pagination__link pagination__link--number" href="#">3</a>
  <a class="pagination__link pagination__link--next" href="#">下一页</a>
</div>
  1. 编写 CSS 样式,应用样式重置、BEM命名、媒体查询和样式表压缩。
/* 样式重置 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
   margin: 0;
   padding: 0;
   border: 0;
   font-size: 100%;
   font: inherit;
   vertical-align: baseline;
}

/* BEM 命名规范 */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
}

.pagination__link {
  display: inline-block;
  text-decoration: none;
  color: #333;
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-right: 10px;
}

.pagination__link--prev,
.pagination__link--next {
  background-color: #f4f4f4;
  color: #333;
  font-weight: bold;
}

.pagination__link--number {
  background-color: #fff;
}

.pagination__link--active {
  background-color: #333;
  color: #fff;
}

/* 媒体查询 */
@media screen and (max-width: 768px) {
  .pagination {
    flex-direction: column;
    align-items: flex-start;
  }

  .pagination__link {
    margin-bottom: 10px;
  }
}

/* 样式表压缩 */
.pagination{display:flex;justify-content:center;align-items:center}.pagination__link{display:inline-block;text-decoration:none;color:#333;padding:6px 12px;border:1px solid #ccc;border-radius:4px;margin-right:10px}.pagination__link--prev,.pagination__link--next{background-color:#f4f4f4;color:#333;font-weight:bold}.pagination__link--number{background-color:#fff}.pagination__link--active{background-color:#333;color:#fff}@media screen and (max-width:768px){.pagination{flex-direction:column;align-items:flex-start}.pagination__link{margin-bottom:10px}}

这些规则和示例都是建立门户网站 CSS 框架的基础,当您充分理解并且能够熟练运用它们时,就能够更加高效和优雅地设计网站了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:门户网站构建CSS框架的规则 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • IE7中绝对定位元素之间的遮盖问题示例探讨

    下面我将详细讲解“IE7中绝对定位元素之间的遮盖问题示例探讨”的完整攻略。 问题背景 在IE7中,绝对定位元素之间的层级关系会与其他浏览器不同,导致元素的显示顺序与预期不符,出现了遮盖问题。 示例说明 以下为两个遮盖问题的示例: 示例一 <body> <div style="position:relative;">…

    css 2023年6月10日
    00
  • CSS特殊性、继承与层叠

    CSS特殊性、继承与层叠是CSS样式表的基础知识,理解这些概念对赋予网页以不同的样式非常重要。下面是本题要求的完整攻略: CSS特殊性 特殊性指的是选择器某个部分对样式表条目优先级的影响力。CSS规定了4个级别来计算特殊性,从左到右优先级依次降低: 内联样式(inline style) ID选择器 类选择器、属性选择器、伪类 标签选择器、伪元素 特殊性越高,…

    css 2023年6月9日
    00
  • css滤镜效果(二)

    关于“css滤镜效果(二)”的完整攻略,我会从以下几个方面进行讲解: 什么是CSS滤镜效果 CSS滤镜效果的分类 色彩调整类滤镜(Color Adjustment Filters) 几何变换类滤镜(Geometric Filters) 特效类滤镜(Visual Effects Filters) CSS滤镜效果的属性 filter filter:none 使用…

    css 2023年6月10日
    00
  • 针对浏览器隐藏CSS之独孤九剑

    首先, 针对浏览器隐藏CSS之独孤九剑,需要了解 CSS的三种隐藏方式: display:none; 元素被完全隐藏,并且不占用页面空间 visibility:hidden; 元素被隐藏,但仍占用页面空间 opacity:0; 元素被透明化,但仍占用页面空间 以下是对应的攻略: 隐藏方式一:display:none; 方法一:通过Chrome开发者工具修改 …

    css 2023年6月10日
    00
  • 原生JS实现导航下拉菜单效果

    这里是原生JS实现导航下拉菜单效果的完整攻略。 确定HTML结构 首先,我们需要确定HTML结构。导航下拉菜单通常都是基于一个ul列表实现的,该列表作为导航栏的主体内容,每个列表项上展示导航项的名称,在鼠标移入导航项时,显示该项的子菜单,鼠标移出后,子菜单消失。以下是HTML示例: <nav> <ul> <li><a…

    css 2023年6月10日
    00
  • 网站设计之合理架构CSS

    以下是“网站设计之合理架构CSS”的完整攻略: 网站设计之合理架构 CSS 在网站设计中,CSS 是一个非常重要的组成部分。以下是一些常见的合理架构 CSS 的方法。 使用模块化 CSS 可以使用模块化 CSS 来组织 CSS 代码,例如: 将 CSS 代码分成多个模块,每个模块负责一个特定的功能。 使用类似 BEM(块、元素、修饰符)的命名约定来命名 CS…

    css 2023年5月18日
    00
  • 好用的VSCode头部注释插件Fileheader Pro

    好用的VSCode头部注释插件Fileheader Pro是一个便捷的工具,可以自动为代码文件添加头部注释,提高代码可读性,下面将详细讲解如何使用。 安装 在VSCode插件市场搜索“Fileheader Pro”,点击安装即可。 或者通过以下命令行安装: code –install-extension chenxsan.vscode-fileheader…

    css 2023年6月9日
    00
  • CSS实现超级链接需要通过双击后跳转

    要实现“CSS实现超级链接需要通过双击后跳转”,我们可以利用CSS中的:hover伪类和JavaScript来实现。 以下为示例说明: 利用JavaScript实现双击跳转 在html中添加一个链接元素,并设置id属性,如下所示: <a id="mylink" href="https://www.example.com&q…

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部