主頁 > 企業開發 > css篇

css篇

2020-09-16 08:29:23 企業開發

CSS

Cascading Style Sheet,層疊樣式表,將網頁內容和顯示樣式分離,提高程式性能,

它是一種專門描述結構檔案的表現方式的檔案,主要用于網頁風格設計,包括字體大小、顏色、以及元素的精確定位,在傳統的web網頁設計里,使得css能讓單調的html網頁更富表現力,


**`css`的引入方式**

css可以控制html檔案的顯示,但是控制檔案顯示之前,首先應在需要顯示的html檔案中引入css樣式表,html提供了以下四種引入方式:

(1)行內樣式:將樣式行內定義到具體的html元素上,利用元素的style屬性實作,通用用于精確控制一個html元素的表現,

<!-- 行內樣式:將css代碼寫在html具體的元素的style屬性內 -->
<p id="p1" style="color: red; font-size: 16px">行內樣式</p>

(2)內部樣式:通常在html檔案頭部定義樣式單部分來實作,這種方式下每批css樣式只控制一份html檔案,

<!-- 內部樣式:將css代碼寫在<head>里的<style>標簽內實作 -->
<style type="text/css">
	#p2{
		color: blue;
		font-size: 20px;
	}
</style>

(3)外鏈樣式:樣式檔案和html檔案分離,樣式檔案需要額外引入,這種方式下每批css樣式能控制多份html檔案(最常用),

<!-- 外鏈樣式:利用link標簽引入,使用頻率最高 -->
<link rel="stylesheet" type="text/css" href=https://www.cnblogs.com/jackw1/p/"outer.css" />

(4)匯入外部樣式:和第三種方式類似,只是使用@import來引入外部樣式表檔案,

<!-- 匯入外部樣式:與link方法類似,語法不通,在<style>標簽內使用 -->
<style type="text/css">
	@import "outer.css'";
	@import url("outer.css");
</style>

優先級:行內樣式style> 內部樣式 > 匯入外部樣式import > 外鏈樣式link


**`css`常用選擇器介紹**

定義css樣式的語法總遵循如下格式:

Selector{
	property1: value1;
	property2: value2;
}

Selector:選擇器,決定該樣式的定義對哪些元素起作用
{property:value...}:屬性定義,決定這些樣式起怎樣的作用(字體、顏色、布局等)

標簽選擇器:宣告哪種標簽會使用該css樣式

/* E{....},其中E代表有效的html元素 */
a{
	background-color: blue;
	color: red;
}

class選擇器:宣告特定class值的標簽會使用該css樣式(一個標簽可以設定多個class值)

/* [E].classValue{....},其中E表示html元素,當E存在時,指定的范圍是標簽為E且屬性class的值為classValue,不存在時,范圍是標簽屬性class的值為classValue */
.p2{
	background-color: yellow;
	color: gray;
}

id選擇器:宣告特定id值的標簽會使用該css樣式(一個標簽只能設定一個id值)

/* [E]#idValue{....},同class選擇器概念,E可存在或不存在 */
#id1{
	background-color: gray;
	color: white;
}

組合選擇器:將具有相同css樣式的選擇器,一次性宣告(不限于標簽選擇器,class選擇器和id選擇器也可以組合)

/* Selector1, Selector2, Selector3{....},Selector都是有效的選擇器,可以是標簽選擇器、class選擇器、id選擇器等 */
span, b, #id1{
	color: red;
}

嵌套選擇器:也叫關聯選擇器(不只是標簽選擇器能嵌套,class選擇器和id選擇器也可以)

/* Selector1 Selector2{....},Selector都是有效的選擇器,表示當前需要設定樣式的范圍是Selector1選擇器下所有的Selector2選擇器*/
div p{
	background-color: green;
	color: white;
}

**常用的`css`屬性介紹**

字體
font-family:規定文本的字體系列,如"serif""sans-serif"
font-size:規定文本的字體尺寸
font-style:規定文本的字體樣式,主要有normal,italic,oblique
font-weight:規定字體的粗細,主要有normal,bold,自定義粗細

文本
color:設定文本顏色
letter-spacing:設定字符間距(每個字母間的間距)
line-height:設定文本行高
text-align:設定文本的對齊方式,只有left, right, center
text-decoration:設定文本的裝飾效果,主要有overline(上劃線), underline(下劃線), line-through(洗掉線)
text-indent:設定文本看首行縮進
text-transform:設定文本的大小寫,主要有uppercase, lowercase, capitalize
word-spacing:設定單詞間距

邊框
border:在一個宣告中設定所有的邊框屬性
border-color:設定四條邊框的顏色
border-style:設定四條邊框的樣式,只要有dotted, solid, double, dashed等值
border-width:設定四條邊框的寬度
邊框分為:border-leftborder-rightborder-topborder-bottom
border-left:在一個宣告中設定所有左邊框屬性,對應還有border-right
border-left-color:設定左邊框顏色
border-lelft-style:設定左邊框樣式
border-left-width:設定左邊框寬度

可以將屬性一次性寫在一起,更方便
border: 10px red solid;

背景
background:在一個宣告中設定所有的背景屬性
background-attachment:設定背景影像是否固定或者隨著頁面的其余部分滾動,主要有fixedscroll兩個值
background-color:設定元素的背景顏色
background-image:設定元素的背景圖片,主要有urlnone兩個屬性
background-positionpx, % 設定背景影像的開始位置,可以指定top left等,也可以指定具體的像素位置
background-repeat:設定是否及如何重復背景影像,主要有repeat, repeat-x, repeat-y, no-repeat

串列
list-style:在一個宣告中設定所有的串列屬性,設定成none可以去掉ul中的原點等屬性值
list-style-image:將影像設定為串列項標記,主要有url
list-style-position:設定串列項標記的放置位置,主要有outsideinside兩個值
list-style-type:設定串列項標記的型別,主要有disc, circle, square, decimal等,不能和list-style-image同時使用

表格
border-collapse:設定是否把表格邊框合并為單一的邊框,值為collapse
border-spacing:設定分割單元格邊框的距離,與border-collapse不能同時使用
caption-side:設定表格標題的位置
empty-cells:設定是否顯示表格中的空單元格,值為hide, show

常用偽類別屬性
<a>超鏈接標簽
a:link 超鏈接的普通樣式
a:visited 被點擊過的超鏈接樣式
a:hover 滑鼠指標經過超鏈接上時的樣式
a:active 在超鏈接上單擊時,既"當前激活"時超鏈接的樣式

塊級標簽->行級標簽:display:inline
行級標簽->塊級標簽:display:block
注:行級標簽是默認情況下是不能設定寬度和高度的,如果要設定,需要把行級標簽變成塊級標簽


**盒子模型**

我們可以把頁面中的元素都可以看作一個盒子,占據著一定的頁面空間,這些占據的空間往往比單純的內容要大,換句話說,我們可以調整盒子的邊框和距離的引數來調整盒子的位置,

盒子寬度:content+padding+border+margin

因此我們可以利用好盒子的這些屬性,就能很好的實作各種各樣的排版效果,

border屬性主要有3個,border-color, border-width, border-style,通常在設定border時常常將3個屬性進行很好的配合,才能達到良好的效果,

padding用于控制contentborder之間的距離,
padding:一次性將四個邊距全部設定(上右下左,順時針)
padding-top:上邊距
padding-bottom:下邊距
padding-left:左邊距
padding-right:右邊距

margin指的是元素與元素之間的距離,
margin:一次性將四個邊距全部設定(上右下左,順時針)
margin-top:上邊距
margin-bottom:下邊距
margin-left:左邊距
margin-right:右邊距

注:

  • 兩個行級元素之間的距離是margin-left和margin-right兩者的和,兩個塊級元素之間的距離不是margin-top和margin-bottom的和,而是兩者之中的較大值,
  • 其實margin除了設定正數以外,也可以設定負數,當設定為負數時,會使得塊向反方向移動,甚至覆寫在另外的塊上,
  • 當塊之間是父子關系,通過設定子塊的margin為負數時,可以使得子塊從父塊中"分離出來"

**元素的定位**

網頁中各個元素都必須有自己的位置,從而搭建出整個頁面的結構,
float:值為left, right或者默認值none,當設定了元素向左浮動或向右浮動時,元素會向其父元素的左側或右側靠近
clear:設定塊元素的clear屬性清除對float的影響,值為left, right, both
position:制定塊的位置,即塊相對于其父塊的位置和相對它自身應該在位置,值有absolute, fixed, relative, static
當將子塊的position設定為absolute時,子塊已經不再從屬于父塊,其邊框設定的距離是相對頁面body的距離,而不是父塊的距離
當將塊的position引數設定為relative時,與將其設定為absolute時完全不同,這時子塊時相對于自身在父塊的原先位置來進行定位的,

定位資料參考:http://www.cnblogs.com/dolphinX/archive/2012/10/13/2722501.html

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/55476.html

標籤:Html/Css

上一篇:html篇

下一篇:HTML連載78-3D播放器下、背景尺寸屬性

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more