培訓(xùn)筆記:網(wǎng)頁前端

8月20日

  • 介紹Html標(biāo)簽和屬性戚哎,實(shí)際演示常用標(biāo)簽的書寫方法
  • 介紹Css的配置原理和書寫規(guī)范
  • 練習(xí):仿制網(wǎng)頁 -
  • 介紹JavaScript編程語言,JQuery框架和Ajax技術(shù)
  • 練習(xí):設(shè)計(jì)Tab切換和手風(fēng)琴樣式

Html標(biāo)簽

ul:無序列表翼抠; ol:有序列表查刻;

表單提交:直接在form表單中定義提交類型和submit按鈕祟剔;
這種方法已不常見,目前多用Ajax提交表單

Html屬性

通用的屬性:id扛稽、class和style;

采用Label標(biāo)簽通過for屬性導(dǎo)向表單控件滑负,改善鼠標(biāo)用戶的點(diǎn)擊體驗(yàn)在张;
標(biāo)簽 <input type="button" /> 的效果與 <button /> 一致,可用后者代替矮慕;

Html表格的格式:

<table class="table">
    <tr>
        <th colspan="3"> Title </th>
    </tr>
    <tr>
        <td rowspan="2"> Content </td>
        <td> Content </td>
        <td> Content </td>
    </tr>
    <tr>
        <td> Content </td>
        <td> Content </td>
    </tr>
</table>

在元素標(biāo)簽中以width屬性規(guī)定列寬帮匾,要禁止過多的內(nèi)容改變表格外觀,
需要定義表格樣式table-layout: fixed;
建議將樣式相關(guān)的內(nèi)容放在單獨(dú)的style標(biāo)簽當(dāng)中痴鳄,以便于代碼的閱讀和維護(hù)瘟斜;

塊級元素和內(nèi)聯(lián)元素:

常見的塊級元素:h, p, ul, table
常見的內(nèi)聯(lián)元素:a, b, i, td, img, span, button, ...

Css = 選擇器 + 聲明

當(dāng)聲明內(nèi)容超過一個(gè)單詞,應(yīng)添加引號痪寻;聲明間應(yīng)以分號分隔螺句;
Css的意義:保證Html代碼的可讀性;

Html通過Link標(biāo)簽連接到外部Css槽华,如此一份Css可用于控制多個(gè)頁面的布局壹蔓;
當(dāng)控制組件的多個(gè)Css聲明沖突時(shí),按如下優(yōu)先級排序:

外部樣式表 < 內(nèi)部樣式表 < 內(nèi)聯(lián)樣式猫态;

對同一級的聲明佣蓉,后者優(yōu)先于前者

Css選擇器

不建議使用通配符,因?yàn)樗淖兞吮姸嗖怀S玫臉?biāo)簽樣式亲雪,將影響瀏覽器的性能勇凭;
建議使用類選擇器,來讓一份樣式表可以被同類元素多次使用义辕;

屬性選擇器的格式:

Label[attr1][attr2 = value]... { declaration... }

子元素選擇器 p > a 與后代選擇器 p a 的區(qū)別:
子代選擇器只能選擇到直接子代虾标,而不能選擇更深層的子代;

兄弟選擇器可按照元素的相鄰性來篩選灌砖,如 li + li 選擇了除第一個(gè)以外的li元素璧函;

常用的Css偽類:
p:hover、:first-child基显、:last-child蘸吓、:nth-child(n)

其中n除數(shù)字外還可以取odd或even,表示選中所有奇數(shù)或偶數(shù)號元素撩幽;
注意選擇子元素時(shí)库继,標(biāo)簽要精確到子元素級箩艺,而非其父級;
p:hover規(guī)定了鼠標(biāo)懸停在p上方時(shí)的樣式宪萄;
p:focus規(guī)定了p獲取到輸入焦點(diǎn)時(shí)的樣式

Css偽元素:
p:before艺谆、:after

在元素的前 / 后添加裝飾性的內(nèi)容

Css選擇器練習(xí)小游戲:Github

Css框模型

元素總尺寸 = 寬高 + 內(nèi)邊距 + 邊框;背景應(yīng)用在邊框和邊框以內(nèi)的區(qū)域拜英;

為了保證元素總尺寸不變静汤,修改padding時(shí)往往要同時(shí)修改寬高,
為了避免這種麻煩聊记,通過 box-sizing: border-box; 設(shè)置盒模型撒妈,
此時(shí)元素寬高將自動地優(yōu)先保證總尺寸不變,而不需要手動調(diào)整排监;

相鄰元素在垂直方向上的外邊距將會被合并狰右,水平方向上則不會

Css定位

包括普通流、浮動和絕對定位舆床;

流:

塊級元素縱向排列棋蚌,內(nèi)聯(lián)元素在行內(nèi)排列;

Display屬性:

Block:塊級元素挨队;
Inline:內(nèi)聯(lián)元素谷暮,內(nèi)聯(lián)元素具有文字特性,換行將被解析為空格盛垦;
Inline-block:行內(nèi)塊元素湿弦,行內(nèi)顯示,兼具文字特性和樣式設(shè)定能力腾夯;
None:不顯示颊埃,將讓出元素原有的流位置

浮動:

塊將向左或右浮動,直到遇到邊框或同類蝶俱;

浮動會導(dǎo)致父級對象盒子不能被撐開班利,
要向含浮動的父級元素中正常追加塊級子元素,應(yīng)清除浮動榨呆,
可在父級使用 overflow:hidden
或在最后一個(gè)浮動元素尾定義 p:after { clear: both; }

定位罗标,即使用Position屬性:

Static:默認(rèn)流定位;
Relative:元素偏移一定距離积蜻,保持原有的形狀闯割,保留原有的空間;
Absolute:元素脫離流竿拆,作為塊宙拉,相對其已定位的祖先元素作直接定位;
Fixed:元素脫離流如输,作為塊,絕對定位于視窗

練習(xí):仿制網(wǎng)頁 -

JavaScript編程語言

Js通過DOM操縱Html文檔中的任何元素,實(shí)際項(xiàng)目中一般通過JQuery框架實(shí)現(xiàn)不见;

舉例:點(diǎn)擊按鈕彈出提示框

document.getElementById(id).onclick(function() {
    alert("Message");
})

采用JQuery改寫澳化,將簡化選擇過程

$("#id").click(function() {
    alert("Message");
})

要使用JQuery,首先引入JQuery腳本稳吮,在線引用:

<script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-3.5.1.min.js"></script>

在實(shí)際開發(fā)中缎谷,建議將在線引用內(nèi)容下載到本地,并改為本地引用灶似;

JQuery的 $(this) 選擇器可以在點(diǎn)擊事件中獲取被選中的子元素列林;

JQuery的常用的方法:

removeClass("class-name") 和 addClass("class-name"),移除或添加class酪惭;
css("decl-name": "decl-value")希痴,直接修改元素css;
toggleClass("class-name")春感,切換元素class砌创;
append(),在元素內(nèi)追加Html文本鲫懒;

鏈?zhǔn)讲僮鳎?/p>

當(dāng)選中元素時(shí)添加class嫩实,并移除其兄弟元素的class:

$(this).addClass("class-name").siblings().removeClass("class-name")

Js還可以通過BOM與瀏覽器對話

Ajax請求

示例代碼(JQuery):

$.ajax({
    url: "my-controller/ajax-function",
    success: function() {
        $(this).text("Success");
    }
})

詳細(xì)教程:W3school

常用的Ajax業(yè)務(wù)場景:

練習(xí):設(shè)計(jì)Tab切換和手風(fēng)琴樣式

Tab切換:點(diǎn)擊菜單切換頁面顯示的內(nèi)容;
手風(fēng)琴:點(diǎn)擊展開詳細(xì)菜單窥岩,并收起其他已展開的菜單


8月21日

  • Vue前端框架的部署和項(xiàng)目開發(fā)
  • 介紹多種前端框架
  • 介紹圖表生成工具

獲取Node.js環(huán)境和VsCode編輯器資源甲献,通過命令行完成依賴資源的自動下載安裝;
完成項(xiàng)目部署颂翼,打開第一個(gè)Vue項(xiàng)目晃洒;參考文檔:CnBlogs

Vue工程結(jié)構(gòu)說明,設(shè)定路由映射和頁面跳轉(zhuǎn)疚鲤,使項(xiàng)目中的頁面得以串聯(lián)锥累;
頁面Template結(jié)構(gòu)說明,導(dǎo)出選項(xiàng)的常用方法說明集歇;

Vue的優(yōu)勢:數(shù)據(jù)綁定

Vue規(guī)避了JQuery繁瑣的頁面修改過程桶略,
通過框架簡潔地實(shí)現(xiàn)數(shù)據(jù)渲染,響應(yīng)式地改變元素文本或?qū)傩?/p>

Vue獨(dú)特的Class和常用的組件屬性:

v-if
v-show
雙向綁定

Vue的生命周期方法诲宇,自定義配色方案等际歼;

參考教程:菜鳥教程

介紹多種前端框架:

Bootstrap
LayUI
EasyUI
KendoUI
Vux
Vant
Element

介紹圖表生成工具:

Echarts
AntV


8月24日

  • 響應(yīng)式布局設(shè)計(jì)示例,Css簡單動畫的實(shí)現(xiàn)姑蓝,Echarts的應(yīng)用
  • 微信小程序的建立和基本配置鹅心,微信開發(fā)者平臺的使用

響應(yīng)式布局

響應(yīng)式布局設(shè)計(jì)方案,左側(cè)菜單固定纺荧,右側(cè)主體自適應(yīng):

Css函數(shù):calc(算式)旭愧,允許使用使計(jì)算的結(jié)果作為寬高值颅筋,算式中加減號左右必須含空格;
Css的高度定義問題:需要從最外層開始全部定義才能生效输枯,每層的百分比均參考其父元素议泵;

Flex彈性布局:

display: flex; 開啟彈性布局;
flex-direction: column; 設(shè)置布局方向?yàn)榭v向(默認(rèn)為橫向)桃熄;
justify-content: space-around; 設(shè)置軸內(nèi)對齊方式先口,對齊方式的區(qū)別:CSDN
align-items 設(shè)置軸位置,各選項(xiàng)的區(qū)別:MDN
flex: 1; 設(shè)置元素在軸內(nèi)的空間占比

Css簡單動畫

為元素定義 animation: kf 2s;
參數(shù)一為動畫函數(shù)瞳收,參數(shù)二為播放時(shí)間碉京;
動畫函數(shù)示例:

@keyframes kf {
    /* PlanA */
    from { margin-left: 0 }
    to   { margin-left: 1000px }
    /* PlanB */
    0%   { color: red }
    20%  { color: green }
    100% { color: blue }
}

animation參數(shù)三:infinite,設(shè)定動畫循環(huán)播放螟深,
在其前添加 alternate 使一次動畫往返播放谐宙;

將動畫位置設(shè)定的 margin-left: 1000px 改變像素點(diǎn)的繪制方式?jīng)Q定了動畫并不流暢,
將其改為 transform: translateX(1000px); 可提升動畫性能血崭;

將動畫設(shè)置在“元素:hover”層內(nèi)卧惜,可實(shí)現(xiàn)鼠標(biāo)指向時(shí)播放動畫,例如:

p:hover {
    transform: rotate(30deg);
    transition: transform 2s;
}

練習(xí):利用Css動畫實(shí)現(xiàn)小球彈跳效果

Echarts的應(yīng)用

Echarts配置項(xiàng)的含義夹纫,在官網(wǎng)范例中直觀地對比查看配置項(xiàng)對圖表的控制情況咽瓷;
范例地址:Echarts

采用前端代理完成跨域

在配置文件的開發(fā)環(huán)境中設(shè)定ProxyTable,將-api地址自動轉(zhuǎn)化為外網(wǎng)地址

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末舰讹,一起剝皮案震驚了整個(gè)濱河市茅姜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌月匣,老刑警劉巖钻洒,帶你破解...
    沈念sama閱讀 223,207評論 6 521
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異锄开,居然都是意外死亡素标,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,455評論 3 400
  • 文/潘曉璐 我一進(jìn)店門萍悴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來头遭,“玉大人,你說我怎么就攤上這事癣诱〖莆” “怎么了?”我有些...
    開封第一講書人閱讀 170,031評論 0 366
  • 文/不壞的土叔 我叫張陵撕予,是天一觀的道長鲫惶。 經(jīng)常有香客問我,道長实抡,這世上最難降的妖魔是什么欠母? 我笑而不...
    開封第一講書人閱讀 60,334評論 1 300
  • 正文 為了忘掉前任欢策,我火速辦了婚禮,結(jié)果婚禮上赏淌,老公的妹妹穿的比我還像新娘猬腰。我一直安慰自己,他們只是感情好猜敢,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,322評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著盒延,像睡著了一般缩擂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上添寺,一...
    開封第一講書人閱讀 52,895評論 1 314
  • 那天胯盯,我揣著相機(jī)與錄音,去河邊找鬼计露。 笑死博脑,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的票罐。 我是一名探鬼主播叉趣,決...
    沈念sama閱讀 41,300評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼该押!你這毒婦竟也來了疗杉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,264評論 0 277
  • 序言:老撾萬榮一對情侶失蹤蚕礼,失蹤者是張志新(化名)和其女友劉穎烟具,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體奠蹬,經(jīng)...
    沈念sama閱讀 46,784評論 1 321
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡朝聋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,870評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了囤躁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冀痕。...
    茶點(diǎn)故事閱讀 40,989評論 1 354
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖割以,靈堂內(nèi)的尸體忽然破棺而出金度,到底是詐尸還是另有隱情,我是刑警寧澤严沥,帶...
    沈念sama閱讀 36,649評論 5 351
  • 正文 年R本政府宣布猜极,位于F島的核電站,受9級特大地震影響消玄,放射性物質(zhì)發(fā)生泄漏跟伏。R本人自食惡果不足惜丢胚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,331評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望受扳。 院中可真熱鬧携龟,春花似錦、人聲如沸勘高。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,814評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽华望。三九已至蕊蝗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赖舟,已是汗流浹背蓬戚。 一陣腳步聲響...
    開封第一講書人閱讀 33,940評論 1 275
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留宾抓,地道東北人子漩。 一個(gè)月前我還...
    沈念sama閱讀 49,452評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像石洗,于是被迫代替她去往敵國和親幢泼。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,995評論 2 361