巨蟒python全棧開發數據庫前端1:HTML基礎

 

1.HTML介紹css

什麼是前端?html

前端就是咱們打開瀏覽器的頁面.,不少公司都有本身的瀏覽器的頁面,這個階段學習的就是瀏覽器界面前端

好比京東的界面:https://www.jd.com/html5

 

引子python

例1 jquery

socket客戶端不用寫,只須要寫一個服務端就能夠引入了web

能夠這麼認爲,瀏覽器就是客戶端chrome

#py文件
import
socket server=socket.socket() ip_port=('127.0.0.1',8002) server.bind(ip_port) server.listen() conn,addr=server.accept() from_browser_msg=conn.recv(1024) print(from_browser_msg) conn.send(b'hello browser')

客戶端輸入地址:127.0.0.1:8002端口,那麼結果顯示以下,docker

怎麼辦?django

服務端顯示以下

b'GET / HTTP/1.1\r\nHost: 127.0.0.1:8002\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\r\nAccept-Encoding: gzip, deflate, br\r\nAccept-Language: zh-CN,zh;q=0.9\r\n\r\n'

整理以下:(\r\n的意思就是換行)

b'GET / HTTP/1.1
Host: 127.0.0.1:8002
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9

'

 

OSI七層模型中的,應用層傳輸協議,包括HTTP&HTTPS協議

 上邊的就是HTTP協議,協議就是消息的格式

 

例二:(必須按照http協議的規則,傳輸消息)

 

import socket
server=socket.socket()

ip_port=('127.0.0.1',8002)
server.bind(ip_port)
server.listen()

conn,addr=server.accept()
from_browser_msg=conn.recv(1024)
print(from_browser_msg)
#例一
# conn.send(b'hello browser') #這樣顯示不出來
# 例二
conn.send(b'HTTP/1.1 200 ok \r\n\r\n hello browser')
#這樣就顯示出來了,由於加入了協議

 

 

 

網站中出現瞭如上信息

 ,這樣web項目成功結束了,謝謝!

固然web項目沒有這麼簡單

 

 例三:

import socket
server=socket.socket()

ip_port=('127.0.0.1',8002)
server.bind(ip_port)
server.listen()

conn,addr=server.accept()
from_browser_msg=conn.recv(1024)
print(from_browser_msg)
#例一
# conn.send(b'hello browser') #這樣顯示不出來
# 例二
# conn.send(b'HTTP/1.1 200 ok \r\n\r\n hello browser')
#例三
conn.send(b'HTTP/1.1 200 ok \r\n\r\n')
conn.send(b'<h1>hello browser</h1>')

結果:字體變大了(又黑又大)

<h1>就是須要學的,也就是html5超文本標記語言的標籤,也就是一種標記.

例四:

在txt文檔中輸入:

how do you do!

 

將txt文檔拖入google瀏覽器中,

結果顯示以下:

 

第一階段:

 

 第一次用pycharm打開建立一個html5語言的頁面

例一:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
</html>

例二:

import socket
server=socket.socket()

ip_port=('127.0.0.1',8002)
server.bind(ip_port)
server.listen()

conn,addr=server.accept()
from_browser_msg=conn.recv(1024)
print(from_browser_msg)
#例一
# conn.send(b'hello browser') #這樣顯示不出來
# 例二
# conn.send(b'HTTP/1.1 200 ok \r\n\r\n hello browser')
#例三
# conn.send(b'HTTP/1.1 200 ok \r\n\r\n')
# conn.send(b'<h1>hello browser</h1>')
#例四
conn.send(b'HTTP/1.1 200 ok \r\n\r\n')#注意這個地方必須加上http協議,不然客戶端,也就是瀏覽器不會打印
with open('test.html','rb')as f:
    data=f.read()
    conn.send(data)

test.html文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>你好啊!</h1>

</body>
</html>

運行結果顯示:

 

 https://www.cnblogs.com/clschao/articles/10067251.html

上邊這個就是統一資源定位器

/clschao/articles/10067251.html

上邊這個就是服務器上存儲的地址

 

例三:

思考:如何渲染頁面,變成一個優秀的頁面?

按住F12,查看html頁面的調試臺,和pycharm的調試臺差很少

 

經過下面這塊就能夠查看超文本標記語言,小米的設計了,右鍵=>檢查,也是查看

注意:調試的時候儘可能使用""谷歌瀏覽器""渲染引擎,來進行調試

頭疼的問題:兼容全部瀏覽器,如今差很少能夠兼容了,可是IE特立獨行,一直堅持本身的,咱們也沒有辦法

 

主要學習的課程包括:(必須先學基礎,後邊的框架知足不了咱們的時候,咱們能夠本身定製本身的效果)

html:骨架

css:添加漂亮的效果

js:給頁面添加動態效果

jquery:更簡單,效果更多的封裝的一個小的框架(js)
bootstrap:(css的一個封裝)現成用就好了

 

小技巧:在html中,!+Tab,就是找回原來的文件.

 

(1)<!DOCTYPE html>聲明爲HTML5文檔。

(2)<html>、</html>是文檔的開始標記和結束的標記

(3)<head>、</head>定義了HTML文檔的開頭部分。

(4)<title>、</title>定義了網頁標題,在瀏覽器標題欄顯示。

(5)<body>、</body>之間的文本是可見的網頁主體內容。

 

嚴格封閉標籤:<html></html>, <div></div>

例如:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    
</head>
<body>

<h1>123</h1>
<div>ABC</div>
<input type="text">

</body>
</html>

結果以下:

 

HTML經常使用標籤

  head內經常使用標籤

 

本次主要標籤meta,h1,title

<title></title>:簡單來講,就是網頁的名字

meta標籤的組成:meta標籤共有兩個屬性,它們分別是http-equiv屬性和name 屬性,不一樣的屬性又有不一樣的參數值,這些不一樣的參數值就實現了不一樣的網頁功能。

 注意:meta是自封閉的頁面

例一:

meta標籤

例二:

<!DOCTYPE html>
<html lang="en">
<head>
    <!--<meta charset="UTF-8" class="xxx" dogngua="999">-->
    <meta charset="UTF-8">

    <meta http-equiv="refresh" content="2">
    <!--上邊這條語句表明2s鍾就會刷新一次。-->

    <meta http-equiv="refresh" content="2;URL=https://www.baidu.com">
    <!--上邊這條語句表明2s鍾就會刷新一次。而且跳轉到百度搜索頁面-->

    <title>docker</title>
</head>
<body>

<h1>123</h1>
<div>ABC</div>
<input type="text">

</body>
</html>

 

 

標籤的語法:

  • <標籤名 屬性1=「屬性值1」 屬性2=「屬性值2」……>內容部分</標籤名> 
  • <標籤名 屬性1=「屬性值1」 屬性2=「屬性值2」…… />

meta標籤的組成:meta標籤共有兩個屬性,它們分別是http-equiv屬性和name 屬性,不一樣的屬性又有不一樣的參數值,這些不一樣的參數值就實現了不一樣的網頁功能。 

  1.http-equiv屬性:至關於http的文件頭做用,它能夠向瀏覽器傳回一些有用的信息,以幫助正確地顯示網頁內容,與之對應的屬性值爲content,content中的內容其實就是各個參數的變量值。

<!--2秒後跳轉到對應的網址,注意引號-->
<meta http-equiv="refresh" content="2;URL=https://www.baidu.com"> #若是把URL和後面的內容去掉,就是2秒鐘刷新一次,這些內容瞭解一下就行
<!--指定文檔的編碼類型--> 
<meta http-equiv="content-Type" charset=UTF8">
<!--告訴IE以最高級模式渲染文檔-->
<meta http-equiv="x-ua-compatible" content="IE=edge"> #edge是微軟的一個全新的瀏覽器,其實就是告訴IE瀏覽器,你按照最高標準來渲染個人頁面,瞭解一下就能夠啦

  2.name屬性: 主要用於描述網頁,與之對應的屬性值爲content,content中的內容主要是便於搜索引擎機器人查找信息和分類信息用的。

<meta name="keywords" content="meta總結,html meta,meta屬性,meta跳轉"> #關鍵字,也就是別人是能夠經過這些關鍵字搜索到個人這個文章的,搜索引擎就是可以這個content內容來幫別人搜索到你的這個文檔的
#SEO就是作這個的,就是怎麼讓大家公司的網站在別人搜索的時候可以靠前顯示,不算那個花錢的,百度是充值的,你衝個20w,別人可能一天就給你點擊完了,特別的貴

<meta name="description" content="xxxxxpythonxxx學習">  #是對這個文檔的描述,在百度一些內容的頁面上,f12打開看看

 

瀏覽器內核:

    瀏覽器    --    內核

    IE           --    trident

    chrome  ---   blink

              火狐       ---   gecko

    Safari     ---   webkit

「瀏覽器內核」也就是瀏覽器所採用的「渲染引擎」,渲染引擎決定了瀏覽器如何顯示網頁的內容以及頁面的格式信息。渲染引擎是兼容性問題出現的根本緣由。

 

2.補充

補充1

(下面就表明是英文,中文是zh-CN)

 

補充2

(下邊表明HTTP的版本,200表明"狀態碼",ok表明狀態"標識符")

 

3.展現給用戶的標籤

body內經常使用標籤(HTML中的重點)

基本標籤(塊級標籤和內聯標籤)

不加標籤的純文字也是能夠在body中寫的
<b>加粗</b>
<i>斜體</i>
<u>下劃線</u>
<s>刪除</s>

<p>段落標籤</p> #獨佔一個段落

<h1>標題1</h1>
<h2>標題2</h2>
<h3>標題3</h3>
<h4>標題4</h4>
<h5>標題5</h5>
<h6>標題6</h6>

<!--換行-->
<br>

<!--水平線--><hr> #就是單獨個一個水平線
每次加上一些內容,別忘了刷新一下頁面,才能看到新添加的效果或者內容,其實上面這些標籤不多用

注意:

1.html中多個空格表明1個空格,下面的多個空格只表明一個空格

例如:<b>寶           寶</b>

2.<b>寶&nbsp&nbsp&nbsp寶</b>

上邊每一個&nbsp,表明一個空格

特殊字符(還有好多其餘的,能夠直接百度搜HTML特殊符號對照表)

 

div標籤和span標籤(經常使用)

區別:

div標籤獨佔一行

span共享一行

 

塊級標籤:p、h1--h六、hr、div

內聯標籤:b、i、u、s

img標籤

 

<img src="圖片的路徑" 
   alt
="圖片未加載成功時的提示"
   title
="鼠標懸浮時提示信息" (截圖時顯示)
   width
="寬"
   height
="高(寬高兩個屬性只用一個會自動等比縮放)">

 

src的路徑又分爲兩種:網上的一個圖片路徑和本地的一個相對圖片路徑

 

a標籤:

所謂的超連接是指從一個網頁指向一個目標的鏈接關係,這個目標能夠是另外一個網頁,也能夠是相同網頁上的不一樣位置,還能夠是一個圖片,一個電子郵件地址,一個文件,甚至是一個應用程序。

 

<a href="http://www.oldboyedu.com">點我</a>
什麼是URL?
URL是統一資源定位器(Uniform Resource Locator)的縮寫,也被稱爲網頁地址,是因特網上標準的資源的地址。
URL舉例
http://www.sohu.com/stu/intro.html
http://222.172.123.33/stu/intro.html

URL地址由4部分組成
第1部分:爲協議:http://、ftp://等 
第2部分:爲站點地址:能夠是域名或IP地址
第3部分:爲頁面在站點中的目錄:stu
第4部分:爲頁面名稱,例如 index.html
各部分之間用「/」符號隔開。
什麼是URL?

href屬性指定目標網頁地址。該地址能夠有幾種類型:

  • 絕對URL - 指向另外一個站點(好比 href="http://www.jd.com)
  • 相對URL - 指當前站點中確切的路徑(href="index.htm") #學django的時候會用的比較多
  • 錨URL - 指向頁面中的錨(href="#top"),博客的目錄常常用到,還能夠跳轉到 name屬性爲p1的a標籤上,<a name='top'>xxx</a>(返回到頂部)

 

 

target:

 

  • _blank表示在新標籤頁中打開目標網頁
  • _self表示在當前標籤頁中打開目標網頁

 

列表

  1.無序列表

<ul type="disc">
  <li>第一項</li>
  <li>第二項</li>
</ul>

 type屬性:

  • disc(實心圓點,默認值)
  • circle(空心圓圈)
  • square(實心方塊)
  • none(無樣式)

  2.有序列表

<ol type="1" start="2">
  <li>第一項</li>
  <li>第二項</li>
</ol>

 

type屬性: start是從數字幾開始

  • 1 數字列表,默認值
  • A 大寫字母
  • a 小寫字母
  • Ⅰ大寫羅馬
  • ⅰ小寫羅馬

 

  3.標題列表(就像大綱同樣,有一個層級效果)

 

<dl>
  <dt>標題1</dt>
  <dd>內容1</dd>
  <dt>標題2</dt>
  <dd>內容1</dd>
  <dd>內容2</dd>
</dl>

 

 表格(爲了單元格不溢出,合併的時候要去掉後邊的或者前面的)

<table border='1'>
  <thead> #標題部分
  <tr> #一行
    <th>序號</th> #一個單元格
    <th>姓名</th>
    <th>愛好</th>
  </tr>
  </thead>

<tbody> #內容部分 <tr> #一行 <td>1</td> #一個單元格 <td>Egon</td> <td>槓娘</td> </tr> <tr> <td>2</td> <td>Yuan</td> <td>日天</td> </tr> </tbody> </table>

屬性:

  • border: 表格邊框.
  • cellpadding: 內邊距 (內邊框和內容的距離)
  • cellspacing: 外邊距.(內外邊框的距離)
  • width: 像素 百分比.(最好經過css來設置長寬)
  • rowspan: 單元格豎跨多少行
  • colspan: 單元格橫跨多少列(即合併單元格)

 

4.form表單

5.css引入基本選擇器

6.百度註冊框

相關文章
相關標籤/搜索