美文网首页
CSS编程排版练习

CSS编程排版练习

作者: 未央花语 | 来源:发表于2019-04-01 11:23 被阅读0次

1. 实验准备

2. 实验内容

制作一个简单的页面, 要求:
​1)菜单始终在屏幕的上方(无论拖动);
2) 网页的结构如附件所示。每个区块之间,需要有边距和空白。
3) 在屏幕的右下方,固定一个“联系电话”的方框;不随滚动条而改变位置。
4) 进行界面设计。要求有布局、色彩、字体等因素的考虑;

3.实验环境

  • JetBrains WebStorm 2018.3.5 x64 : html+css

4.实验样式

样式.png

4.具体过程

1、整体布局
整体布局.png
  • 同时,我们在可以用css定义全局样式;
  • 开始前,在<style>开闭标签之间添加下面的代码:
html {
    font-family: sans-serif;
}
*{
    box-sizing: border-box;
}
body {
    margin:10px;
}

这只是一些一般设置,在我们页面上设置了无衬线的字体、使用 box-sizing模型,去掉 <body>默认外边距。

2、导航栏
导航栏.png

a) 基本文本

<section class="info-box" >
    <ul>
        <li><a href="#" class="active">Home</a></li>
        <li><a href="#">News</a></li>
        <li><a href="#">Contact</a></li>
        <li><a href="#">About</a></li>
    </ul>
</section>

b)基本设置

.info-box {
  width: 450px;
  height: 400px;
  margin: 0 auto;
}
  • 这对内容设置具体的高度和宽度、在屏幕居中使用老把戏margin: 0 auto。在早先的课程中我们建议尽可能不固定内容容器的高度。这个情况下是可以的,因为我们是在选项卡中固定的内容,如果每个标签都有不同的高度,看起来也有些不和谐。

c) 样式化我们的选项卡

  • 现在我们希望样式化选项卡看上去像选项卡——基本,这些是一个水平的导航标签,但不是点击之后加载不同的网页,和我们之前在课程中见到的不同,相反,他们在同一页面上显示不同的面板。首先,在你的CSS底部添加下列规则,从无序列表中移除默认的padding-left和`margin-top值:
.info-box ul {
  padding-left: 0;
  margin-top: 0;
}
  • 接下来,我们将样式化水平选项卡——列表项都要左浮动确保他们一行合起来,他们的list-style-type被设置为 none 用以去除项目符号,宽度(width)设置为 150px 以便于适应这个info-box。链接(<a> )元素设置为displayinline-block,这样他们将在一行显示,仍然保持样式可设置,他们会被样式化合适的选项卡按钮,通过一系列的其他属性。
.info-box li {
    float: left;
    list-style-type: none;
    width: 287px;
}
.info-box li a {
    display: inline-block;
    text-decoration: none;
    width: 100%;
    line-height: 3;
    background-color:lightslategrey;
    color: black;
    text-align: center;
}
  • 最后,对于本节,我们将会在链接状态上设置一些样式。首先,我们要设置标签的 :focus 和 :hover 状态,让他们在获得焦点/鼠标悬浮的时候看起来不同,给用户提供一些可视化反馈。其次,当某个选项卡的类( class )出现 active 时,我们为其设置一条相同的样式规则。把这些CSS放置在你的其他样式后面:
.info-box li a:focus, .info-box li a:hover {
    background-color:indianred;
    color: white;
}
.info-box li a.active {
    background-color:indianred;
    color: white;
}
3、内容栏
内容栏.png
  • 在body标签中添加一个div,设置其class属性为content。
  • 在content中添加两个div,其class属性分别为content1和content2。
  • 分别定义类选择器content、content1、content2

a) 基本设置,三个div(这部分在上一篇文章《CSS编程练习和界面设计》也讲过)

.content{
    margin:0px auto;
    height: 500px;
    margin-top: 60px;
    padding-right: 55px;
    width: 1210px;
    height: 500px;
}
.content1{
    float: left;
    background-color: lightgrey;
    padding:10px;
    width: 450px;
    height: 500px;
}
.content2{
    float: right;
    background-color: lightgray;
    padding:10px;
    width: 630px;
    height: 500px;
}

b) 表格制作以及样式化

  • 在内容栏里面,重点就是一个表格的制作

表格内容:(这个就比较简单)

<table id="customers">
               <tr>
                   <th>拍摄技巧</th>
                   <th>场景</th>
               </tr>
               <tr>
                   <td>形状匹配</td>
                   <td>海浪与翻开的书</td>
              </tr>
</table>
简单的排版
#customers
{
    font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
    width:100%;
    border-collapse:collapse;
}
  • 使用 border-collapse: collapse 使表元素边框合并,生成一个更整洁、更易于控制的外观。
#customers td, #customers th
{
    font-size:1em;
    border:1px solid lightslategrey;
    padding:3px 7px 2px 7px;
}
#customers th
{
    font-size:1.1em;
    text-align:left;
    padding-top:5px;
    padding-bottom:4px;
    background-color:lightcoral;
    color:#ffffff;
}
  • 我们在<th>元素上设置了一些padding——这些元素使数据项有了一些空间,使表看起来更加清晰。
#customers tr.alt td
{
    color:#000000;
    background-color:#EAF2D3;
}
  • 对标题栏进行不同的设置
4、页脚

页脚的制作就相对比较简单了,就是背景+文字,这个跟内容栏的操作就是一样的了。

5、联系方式
  • Html内容编辑
<div class="contact">
    <b>
        <p>联</p>
        <p>系</p>
        <p>方</p>
        <p>式</p>
    </b>
</div>
  • 样式化
.contact{
    background-color:darkgrey;
    float: right;
    right: 3px;
    bottom:10px;
    width: 50px;
    height: 180px;
    margin: 0 auto;
    position: fixed;
    text-align:center;
    vertical-align: middle;
}
.contact p{
    color: white;
}

-div的背景,大小设置都是同样的操作,主要就在于这个联系方式位置是固定的,一直都在页面的右下角。right: 3px; bottom:10px; position: fixed;这几个设置非常关键。

5、总结

这部分教程,主要就是讲了一个页面的分块化,不同的css所控制的版面布局不同。
详细的CSS,如何构建表格,以及使div固定位置显示,不受控制条影响。

相关文章

  • CSS编程排版练习

    1. 实验准备 熟悉层叠样式表css语法; 登录w3school,进行示例练习;http://www.w3scho...

  • 2019-03-30

    CSS编程排版练习 一、前言 本篇开发环境 1、操作系统: windows 10 x642、编辑器:WebStor...

  • 2019/3/27-人机交互实验五

    引言 CSS编程排版练习 环境 用vs code进行编辑html文件 具体过程 实验题目 2.0: 首先新建文本文...

  • 移动排版巨好用的:better-scroll

    纵向的排版 HTML: css: JS: 横向排版 HTML CSS JS 常用方法 refresh(); =>重...

  • CSS格式化排版

    CSS格式化排版 (1)文字排版 文字排版--字体 我们可以使用css样式为网页中的文字设置字体、字号、颜色等样式...

  • css格式化排版

    css格式化排版 一、文字排版 css可以设置网页中的字体、字号、颜色等样式属性 1、字体css样式中为网页设置字...

  • CSS学习资源

    基础篇 CSS 最核心的几个概念 CSS 简写指南 CSS样式基础 CSS样式设置 CSS布局模型 CSS文字排版...

  • 【2016年特别福利】史上最全CSS学习资料大全

    基础篇 CSS 最核心的几个概念 CSS 简写指南 CSS样式基础 CSS样式设置 CSS布局模型 CSS文字排版...

  • 还在用秀米?Markdown让微信公众号排版效率提高10倍

    本文不需要任何计算机编程知识,它将从零基础教你使用Markdown+CSS的方法实现微信公众号高效排版。 相信绝大...

  • 2019-04-01

    人机交互原理及应用第五次实验报告 今天我们继续进行CSS排版练习 过程 第一题:第一题 学习过CSS盒子模型这个就...

网友评论

      本文标题:CSS编程排版练习

      本文链接:https://www.haomeiwen.com/subject/dqcmbqtx.html