搜尋
首頁web前端css教學學習CSS版面入門教程
學習CSS版面入門教程Mar 17, 2017 am 09:33 AM
css佈局

概述

Web 興起之後,關於CSS的介紹和學習資料已經鋪天蓋地。
本文不涉及特定的CSS語法之類的,而是希望從初學者的角度,讓沒有接觸或很少接觸CSS的人能快速的了解 CSS 到底是什麼以及如何使用。

什麼是 CSS

了解一個概念,首先看到的就是它的名字,而常被忽略的,也是它的名字。
CSS (cascading style sheets),可以翻譯成中文 層疊樣式表 。從名字可以看出:

  • 層疊:說明樣式可以疊加,所以會有優先權

  • 樣式表:說明CSS是描述樣式的,而且只是個表,不是程式語言,所以後來隨著CSS 的應用越來越多,才會有Sass 和Less 這些擴充CSS 語法的語言出來

CSS 的作用

CSS 的作用就是樣式,其實Web 只用HTML也可以做出來,只是隨著機器和瀏覽器效能的提升,人們對網頁的美觀和易用性要求越來越高,CSS的重要性才逐漸凸顯。
CSS 我覺得有2個主要的作用:

  • 可以將Web 的樣式統一管理,便於修改,類似於程式語言中的變數或者設定檔

  • 將網頁內容與樣式分離開,讓靈活呈現內容成為可能

注意HTML 是網頁的實際內容,CSS只是控制HTML元素的如何顯示,顯示與否。

CSS for 佈局

CSS 在佈局上用的最多,就是因為了有了CSS,才會有所謂的p+css 佈局方式,以前用HTML都是table 版面。

初步了解 p+css 的佈局,我覺得了解3點就夠了,框模型,定位和浮動

框模型

每個p對css來說都是一個 框 。每個框由內到外由4部分組成content padding border margin
#p 的長和框由這4部分的長總和和寬總和組成
範例:

nbsp;html>

  
    <meta>
    <title>CSS Sample</title>
    <link>
  
  
    <p>Content</p>
  

body {
  background-color: #FAEBD7;
}
p {
  width: 100px;
  height: 100px;
  padding: 30px;
  border: 10px solid blue;
  margin: 10px;
  background-color: red;
  text-align: center;
}

範例很簡單,但是可以看出:

  1. #從外到內依序是margin, border, padding, content

  2. #p 的width 和height 只是content 的大小

#定位

理解了框模型之後,定位也很簡單,其實就是將一個個框定位在頁面上。
定位分為絕對定位和相對定位。

絕對定位

就是在瀏覽器上的絕對位置,透過top 和left 屬性設定相對於瀏覽器左上角的距離

nbsp;html>


<meta>
<title>CSS Sample</title>
<link>


<p>Content1</p>
<p>Content2</p>


body {
  background-color: #FAEBD7;
}
p {
  width: 100px;
  height: 100px;
  padding: 30px;
  border: 10px solid blue;
  margin: 10px;
  background-color: red;
  text-align: center;
  position: absolute;
}
#p1 {
  top: 100px;
  left: 100px;
}
#p2 {
  top: 200px;
  left: 200px;
}

絕對定位明確但不靈活,除非螢幕大小能固定,否則需要多套css。設定不好會造成元素的重疊。
絕對定位中有個很關鍵的設定是position: absolute

相對定位

#相對定位中每個p 的top 和left 不再是相對瀏覽器的左上角了。而是相對剩餘位置的左上角。
同樣是上面的例子,把 position: absolute 換成 position: relative 可以發現2個p 不再重疊了。

浮動

p 預設是 inline的,也就是每個 p 佔據了一行。
佈局時,如果希望多個p排列在一行,那麼就會用到浮動(或用以前的 table方式)
設定 p 浮動屬性之後,就可以用p佈局出各種結構。

下面以常見的管理系統為例,做一個簡單的 p+css 佈局

nbsp;html>

  
    <meta>
    <title>CSS Sample</title>
    <link>
  
  
      <p>head</p>
      <p>
        </p><p>nav</p>
        <p>content</p>
      
      <p>foot</p>
  

body {
  background-color: #FAEBD7;
  height: 100%;
  margin: 0px;
  padding: 0px;
}
p {
  border: 1px solid black;
  text-align: center;
}
#head {
  height: 50px;
  width: 100%;
}
#middle {
  width: 100%;
  top: 50px;
  bottom: 100px;
  left: 0px;
  position: absolute;
}
#nav {
  float: left;
  width: 200px;
  height: 100%;
}
#content {
  height: 100%;
  overflow: hidden;
}
#foot {
  height: 100px;
  width: 100%;
  bottom: 0px;
  left: 0px;
  position: absolute;
}

上面的範例中,head,foot 高度固定,nav 寬度固定。其他都是自適應的,可以透過調整瀏覽器視窗的大小看到效果。

總結

CSS 佈局很簡單,如果還有其他的互動動作,可以透過js來實現(例如導航和內容的連動)。
現在已經基本上沒有人會用 table 的佈局方式了,因為 table 本來只展現資料的一種方式,row,cell 的方式也不適合元件化。

以上是學習CSS版面入門教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
前端面试官常问的问题前端面试官常问的问题Mar 19, 2024 pm 02:24 PM

在前端开发面试中,常见问题涵盖广泛,包括HTML/CSS基础、JavaScript基础、框架和库、项目经验、算法和数据结构、性能优化、跨域请求、前端工程化、设计模式以及新技术和趋势。面试官的问题旨在评估候选人的技术技能、项目经验以及对行业趋势的理解。因此,应试者应充分准备这些方面,以展现自己的能力和专业知识。

如何通过纯CSS实现瀑布流布局的方法和技巧如何通过纯CSS实现瀑布流布局的方法和技巧Oct 20, 2023 pm 06:01 PM

如何通过纯CSS实现瀑布流布局的方法和技巧瀑布流布局(WaterfallLayout)是一种在网页设计中常见的布局方式,它通过将内容以多列的方式排列,每一列的高度不一致,从而形成像瀑布般的视觉效果。这种布局常常被应用于图片展示、商品展示等需要展示大量内容的情景中,具有良好的用户体验。实现瀑布流布局的方法有很多种,可以使用JavaScript或CSS来完成。

CSS布局单位的演变与应用:从像素到根据根元素字体大小的相对单位CSS布局单位的演变与应用:从像素到根据根元素字体大小的相对单位Jan 05, 2024 pm 05:41 PM

从px到rem:CSS布局单位的演变与应用引言:在前端开发中,我们经常需要用到CSS来实现页面布局。在过去的几年间,CSS布局单位也经历了演变和发展。最开始我们使用的是像素(px)作为单位来设置元素的大小和位置。然而,随着响应式设计的兴起和移动设备的普及,像素单位逐渐暴露出一些问题。为了解决这些问题,新的单位rem应运而生,并逐渐被广泛应用于CSS布局中。一

CSS布局技巧:实现圆形网格图标布局的最佳实践CSS布局技巧:实现圆形网格图标布局的最佳实践Oct 20, 2023 am 10:46 AM

CSS布局技巧:实现圆形网格图标布局的最佳实践在现代网页设计中,网格布局是一种常见且强大的布局技术。而圆形网格图标布局则是一种更加独特和有趣的设计选择。本文将介绍一些最佳实践和具体代码示例,帮助你实现圆形网格图标布局。HTML结构首先,我们需要设置一个容器元素,在这个容器里放置图标。我们可以使用一个无序列表(&lt;ul&gt;)作为容器,列表项(&lt;l

CSS Positions布局实现响应式图片排版的方法CSS Positions布局实现响应式图片排版的方法Sep 26, 2023 pm 01:37 PM

CSSPositions布局实现响应式图片排版的方法在现代Web开发中,响应式设计已成为一种必备的技能。而在响应式设计中,图片排版是一个重要的考虑因素之一。本文将介绍如何使用CSSPositions布局实现响应式图片排版,并提供具体的代码示例。CSSPositions是CSS的一种布局方式,它可以让我们根据需要在网页中任意定位元素。在响应式图片排版中,

CSS布局教程:实现圣杯布局的最佳方法CSS布局教程:实现圣杯布局的最佳方法Oct 19, 2023 am 10:19 AM

CSS布局教程:实现圣杯布局的最佳方法,附带代码示例引言:在网页开发中,布局是非常重要的一部分。好的布局能够使网页达到更好的可读性和可访问性。其中,圣杯布局是一种非常经典的布局方式,它能够在实现自适应的情况下使内容居中,保持优雅的显示效果。本文将为大家介绍如何使用最佳的方法实现圣杯布局,并给出具体的代码示例。一、什么是圣杯布局?圣杯布局是一种常见的三栏布局,

前端SEO—详细讲解前端SEO—详细讲解Mar 12, 2024 pm 06:13 PM

一、搜索引擎工作原理当我们在输入框中输入关键词,点击搜索或查询时,然后得到结果。深究其背后的故事,搜索引擎做了很多事情。在搜索引擎网站,比如百度,在其后台有一个非常庞大的数据库,里面存储了海量的关键词,而每个关键词又对应着很多网址,这些网址是百度程序从茫茫的互联网上一点一点下载收集而来的,这些程序称之为“搜索引擎蜘蛛”或“网络爬虫”。这些勤劳的“蜘蛛”每天在互联网上爬行,从一个链接到另一个链接,下载其中的内容,进行分析提炼,找到其中的关键词,如果“蜘蛛”认为关键词在数据库中没有而对用户是有用的便

CSS布局教程:实现两栏响应式布局的最佳方法CSS布局教程:实现两栏响应式布局的最佳方法Oct 18, 2023 am 11:04 AM

CSS布局教程:实现两栏响应式布局的最佳方法简介:在网页设计中,响应式布局是一种非常重要的技术,它能使网页根据用户设备的屏幕大小和分辨率自动调整布局,提供更好的用户体验。在本教程中,我们将介绍如何使用CSS来实现一个简单的两栏响应式布局,并提供具体的代码示例。一、HTML结构:首先,我们需要创建一个基本的HTML结构,如下所示:&lt;!DOCTYPEht

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
1 個月前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器