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

yizhihongxing

当我们构建门户网站时,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日

相关文章

  • CSS实现Hover下拉菜单的方法

    下面我就来详细讲解一下“CSS实现Hover下拉菜单的方法”的完整攻略。 步骤一:HTML基本结构 在HTML中创建一个基本的菜单栏,最好使用无序列表(<ul>)和列表项(<li>)来构建。 <nav> <ul> <li><a href="#">Home</a&…

    css 2023年6月10日
    00
  • CSS3按钮鼠标悬浮实现光圈效果源码

    下面为你详细讲解如何实现CSS3按钮鼠标悬浮实现光圈效果。 简介 在网页设计中,鼠标悬浮效果是十分重要的一环,能够显著提升网站的交互性和美观性。光圈效果是一种比较炫酷的鼠标悬浮效果,在CSS3中我们可以通过动画实现该效果。 实现步骤 HTML结构 <button class="btn btn-effect"> <span…

    css 2023年6月10日
    00
  • html直接引用vue和element-ui的方法

    当我们想要在HTML页面中使用Vue.js和Element UI时,可以通过以下两种方法引入它们: 一、通过CDN引入 我们可以通过使用CDN引入Vue.js和Element UI,如下所示: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&…

    css 2023年6月9日
    00
  • 详解微信小程序canvas圆角矩形的绘制的方法

    详解微信小程序canvas圆角矩形的绘制的方法 前言 canvas是HTML5新增的一个组件,它可以让我们直接在浏览器中绘制出图形、文字和图片等元素。在微信小程序中,我们也可以使用canvas来进行绘制,从而实现一些炫酷的效果。 本篇攻略将详细讲解如何在微信小程序中使用canvas绘制圆角矩形。 步骤 步骤一:创建canvas 我们需要在wxml模板文件中创…

    css 2023年6月10日
    00
  • IE7中绝对定位元素之间的遮盖问题示例探讨

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

    css 2023年6月10日
    00
  • React中常见的动画实现的几种方式

    下面是React中常见的动画实现的几种方式的详细攻略: 1. 使用CSS实现动画 在React中,使用CSS来实现动画是最常用的方式之一。CSS动画可以通过@keyframes关键帧来定义动画过程,也可以使用transition属性来实现简单的过渡动画。 使用@keyframes关键帧 在CSS中,我们可以使用@keyframes关键帧来定义动画过程,然后在…

    css 2023年6月10日
    00
  • css中有哪些方式可以隐藏页面元素及区别

    在 CSS 中,有一些不同的方式可以隐藏页面元素。下面将会细致地介绍这些方法以及它们的不同之处。 1. display: none display: none 属性可以完全移除一个元素,该元素将不再占据与其关联的空间。在网页中,它是最常用的隐藏元素的方法之一。要注意的是它的区别,它与 visibility: hidden 的区别是,visibility: h…

    css 2023年6月10日
    00
  • 原生js实现网易轮播图效果

    请允许我从以下几个方面详细讲解“原生JS实现网易轮播图效果”的完整攻略。 一、基本思路 网易轮播图效果涉及到图片自动切换和手动点击按钮切换两种方式。其基本思路如下: 页面初始化时,将轮播图图片都放置在容器内,然后只显示第一张图片。 利用定时器,定时调用一个函数,进行图片自动切换。 增加两个按钮,分别用于向左和向右切换图片。 给这两个按钮添加事件监听,当按钮被…

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