知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
您當(dāng)前位置>首頁(yè) » 新聞資訊 » 網(wǎng)站建設(shè) >
web移動(dòng)開(kāi)發(fā)總結(jié)(一)
發(fā)表時(shí)間:2018-12-2
發(fā)布人:葵宇科技
瀏覽次數(shù):53
總結(jié)今天學(xué)習(xí)的內(nèi)容:
- 移動(dòng)web的概念和發(fā)展歷史
- 移動(dòng)web的開(kāi)發(fā)方式和區(qū)別
- 響應(yīng)式原理和媒體查詢(xún)(重點(diǎn))
- 響應(yīng)式框架的介紹
- bootstrap框架的基本使用
- bootstrap全局CSS樣式布局容器使用(重點(diǎn))
- bootstrap全局CSS樣式柵格系統(tǒng)使用(重點(diǎn))
- bootstrap全局CSS樣式響應(yīng)式工具使用
- 微金所項(xiàng)目搭建和頭部的結(jié)構(gòu) (重點(diǎn))
web前端
- PC端的web : 在PC端電腦訪問(wèn)的web(網(wǎng)頁(yè)網(wǎng)站) 頁(yè)面一般固定寬度的 居中在網(wǎng)頁(yè)顯示 還有各種瀏覽器需要兼容
- 移動(dòng)端的web: 在手機(jī)端訪問(wèn)的web 頁(yè)面一般是全屏的 全屏在手機(jī)里面顯示 在手機(jī)端的瀏覽器內(nèi)核都是統(tǒng)一webkit 很少考慮瀏覽器兼容性問(wèn)題
移動(dòng)web的概念和發(fā)展歷史
-
什么是移動(dòng)web: 就是運(yùn)行在手機(jī)瀏覽器里面的web應(yīng)用程序(網(wǎng)頁(yè)) 雖然和網(wǎng)頁(yè)是一樣的 , 但是現(xiàn)代的web特別是移動(dòng)web已經(jīng)不再是簡(jiǎn)簡(jiǎn)單單的網(wǎng)頁(yè)了 而是實(shí)現(xiàn)了和APP一樣的功能 所以現(xiàn)代的網(wǎng)頁(yè)已經(jīng)可以稱(chēng)之為應(yīng)用程序了
-
移動(dòng)端的瀏覽器:
- 移動(dòng)端的瀏覽器和PC端有些不一樣 都是在手機(jī)上安裝的瀏覽器 常見(jiàn)有UC QQ 百度 safari 等
- 移動(dòng)端瀏覽器都有一個(gè)共同的特點(diǎn) 就是都是webkit內(nèi)核的瀏覽器 所以在瀏覽器的兼容性上相對(duì)PC端比較統(tǒng)一
-
常見(jiàn)的移動(dòng)web應(yīng)用程序: 淘寶觸屏版 京東手機(jī)版 蘇寧手機(jī)版 攜程手機(jī)版 小米手機(jī)版等等 這些都是在手機(jī)端瀏覽器運(yùn)行的應(yīng)用程序
-
如何區(qū)分什么是網(wǎng)頁(yè)什么是應(yīng)用程序
應(yīng)用程序是指運(yùn)行時(shí)多數(shù)為了實(shí)現(xiàn)某個(gè)功能,就像網(wǎng)站的后臺(tái),網(wǎng)站更側(cè)重于前臺(tái)的美觀展示。 -
移動(dòng)web應(yīng)用程序都有什么特點(diǎn)
- 通常移動(dòng)web應(yīng)用程序都是以m開(kāi)頭的站點(diǎn) 例如m.taobao.com m.jd.com
- 通常移動(dòng)web應(yīng)用都是只運(yùn)行在手機(jī)端 設(shè)計(jì)功能也是符合手機(jī)的操作
- 頁(yè)面都相對(duì)比較簡(jiǎn)潔 使用起來(lái)比較方便
-
移動(dòng)web的發(fā)展歷史
- 從2014年HTML5正式定稿后移動(dòng)web就迎來(lái)了飛速的發(fā)展 因?yàn)槭褂肏TML5技術(shù)可以更方便 更快捷的開(kāi)發(fā)現(xiàn)代web應(yīng)用程序
- 而移動(dòng)端的手機(jī)瀏覽器都是比較新的 HTML5在移動(dòng)端的瀏覽器支持情況都比較好
- 所以HTML5主要應(yīng)用就是在移動(dòng)端 移動(dòng)web
- 直到2015 - 2016 - 2017 - 至今 移動(dòng)web已經(jīng)發(fā)展了很多年 各方面的技術(shù)都比較成熟穩(wěn)定 網(wǎng)上的教程也比較完整成熟 所以現(xiàn)在的web已經(jīng)到全民移動(dòng)web的時(shí)代了
移動(dòng)web的開(kāi)發(fā)方式
- 如何去開(kāi)發(fā)移動(dòng)web 了解常見(jiàn)的移動(dòng)web的開(kāi)發(fā)方式
- 響應(yīng)式開(kāi)發(fā)方式: 開(kāi)發(fā)一個(gè)頁(yè)面 同時(shí)運(yùn)行在PC端和移動(dòng)端 針對(duì)不同的屏幕大小 來(lái)自動(dòng)適應(yīng)屏幕 展示對(duì)應(yīng)端的頁(yè)面的布局
- 原生的移動(dòng)web開(kāi)發(fā)方式: 針對(duì)每一個(gè)端 PC端和移動(dòng)端 都分別開(kāi)發(fā)1個(gè)頁(yè)面 PC端加載PC端的頁(yè)面 移動(dòng)端加載移動(dòng)端的頁(yè)面
- 兩種方式的對(duì)比 和應(yīng)用場(chǎng)景
- 響應(yīng)式開(kāi)發(fā): 一個(gè)頁(yè)面適配多個(gè)終端 開(kāi)發(fā)效率高 維護(hù)效率高 但是由于代碼都在一個(gè)頁(yè)面會(huì)造成冗余 所以運(yùn)行的效率低
應(yīng)用在一些新建的網(wǎng)站 同時(shí)把2個(gè)端都做完 快速上線 對(duì)頁(yè)面加載性能要求不高 使用響應(yīng)式 新聞網(wǎng)站 官網(wǎng) 活動(dòng)頁(yè)面等 - 原生移動(dòng)web開(kāi)發(fā): 要針對(duì)每個(gè)端都寫(xiě)1個(gè)頁(yè)面 開(kāi)發(fā)維護(hù)效率低 但是由于針對(duì)性強(qiáng) 只有對(duì)應(yīng)端需要的代碼 代碼冗余少 運(yùn)行效率高
應(yīng)用在一些老網(wǎng)站 PC已經(jīng)上線 單獨(dú)開(kāi)發(fā)移動(dòng)端 寫(xiě)2套代碼 對(duì)頁(yè)面加載性能要求高使用原生 電商 直播 視頻 聊天等
- 響應(yīng)式開(kāi)發(fā): 一個(gè)頁(yè)面適配多個(gè)終端 開(kāi)發(fā)效率高 維護(hù)效率高 但是由于代碼都在一個(gè)頁(yè)面會(huì)造成冗余 所以運(yùn)行的效率低
- 學(xué)習(xí)響應(yīng)式開(kāi)發(fā)方式
-
理解響應(yīng)式開(kāi)發(fā)的原理
- 獲取屏幕的寬度去判斷 當(dāng)前是屬于什么屏幕
- 屏幕通常有4種
- 大屏幕 屏幕寬度大于1200
- 中屏幕 屏幕寬度大于992 小于等于1200
- 小屏幕 屏幕寬度大于768 小于等于992
- 超小屏幕 屏幕寬度小于等于768
- 根據(jù)不同的屏幕來(lái)改變頁(yè)面的布局方式
-
如何判斷和改變布局方式
- 使用JS判斷 和 設(shè)置行內(nèi)樣式的方式
- 使用CSS3新增的屬性媒體查詢(xún)來(lái)判斷屏幕寬度 然后在媒體查詢(xún)里面 寫(xiě)需要改變的樣式
-
媒體查詢(xún)的語(yǔ)法
@media(條件){
//條件成立執(zhí)行的代碼
}
條件通常有3種寫(xiě)法
width:1200px; 表示屏幕寬度等于1200 條件成立
min-width:1200px; 表示屏幕寬度大于等于1200 條件成立
max-width:1200px 表示屏幕寬度小于等于1200 條成立
如果有多個(gè)條件可以使用 and相連
@media(條件) and (條件2){
//條件成立執(zhí)行的代碼
}
條件成立執(zhí)行的代碼就是普通的CSS 代碼 里面寫(xiě)選擇{屬性:值} 的方式 當(dāng)條件成立就會(huì)執(zhí)行這個(gè)CSS樣式 -
媒體查詢(xún)條件的判斷順序
- 如果使用min-width作為條件判斷的時(shí)候 由于是大于等于的判斷
假設(shè)屏幕1400 同時(shí)寫(xiě)了3個(gè)條件 min-widht:768px min-width:992px min-width:1200px
那么1400 大于 1200也大于992 也大于768 就意味著3個(gè)條件都能成立 但是一般我們會(huì)取最大的屏幕的樣式也就是1200 的所以寫(xiě)判斷的時(shí)候要從小到大的方式寫(xiě) 讓大屏幕生效的樣式把小屏幕的樣式覆蓋 (向下覆蓋)
- 如果使用min-width作為條件判斷的時(shí)候 由于是大于等于的判斷
-
min-width的寫(xiě)法:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
* {
margin: 0px;
padding: 0px;
/*設(shè)置盒模型包含邊框*/
box-sizing: border-box;
}
.col {
height: 100px;
float: left;
border: 1px solid red;
}
/*如果有多個(gè)條件 可以用 and連接*/
@media (min-width: 768px){
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 50%;
}
}
/*如果有多個(gè)條件 可以用 and連接*/
@media (min-width: 992px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 33.33%;
}
}
@media(min-width: 1200px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 25%;
}
}
/*如果有多個(gè)條件 可以用 and連接*/
@media (max-width: 768px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 100%;
}
}
/* 由于CSS有層疊性 如果都寫(xiě)min-width 大于等于生效的判斷 小屏幕的判斷 和 大屏幕的判斷同時(shí)生效
比如屏幕寬度1400 肯定大于1200 肯定大于 992 和 768 3個(gè)條件都滿足 但是由于CSS層疊性
1200 最上面 992 第二 768 第三 768把前面的樣式都覆蓋
希望 1200 把 992 和 768 覆蓋 */
/* 寫(xiě)媒體查詢(xún)條件的時(shí)候 如果 使用min-width 大于等于做判斷
應(yīng)該把條件從小到大寫(xiě) 讓大屏幕樣式把小屏幕樣式覆蓋 向下覆蓋*/
</style>
</head>
<body>
<div class="row">
<div class="col">div1</div>
<div class="col">div2</div>
<div class="col">div3</div>
<div class="col">div4</div>
</div>
</body>
</html>
max-width的寫(xiě)法:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>Document</title>
<style>
* {
margin: 0px;
padding: 0px;
/*設(shè)置盒模型包含邊框*/
box-sizing: border-box;
}
.col {
height: 100px;
float: left;
border: 1px solid red;
}
@media(max-width: 1200px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 33.33%;
}
}
/*如果有多個(gè)條件 可以用 and連接*/
@media (max-width: 992px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 50%;
}
}
/*如果有多個(gè)條件 可以用 and連接*/
@media (max-width: 768px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 100%;
}
}
/*如果有多個(gè)條件 可以用 and連接*/
@media (min-width: 1200px) {
/*和CSS一樣寫(xiě)選擇器和屬性 和值*/
.col {
width: 25%;
}
}
/* 由于CSS有層疊性 如果都寫(xiě)max-width 小于等于生效的判斷 小屏幕的判斷 和 大屏幕的判斷同時(shí)生效
希望小屏幕生效
例如 750寬度 max-width:1200; max-width:992; max-width:768;
大家都成立希望生效 768最小那個(gè) 需要把最小768判斷寫(xiě)在最后面把前面2個(gè)覆蓋
*/
/* 寫(xiě)媒體查詢(xún)條件的時(shí)候 如果 使用max-width 小于等于做判斷
應(yīng)該把條件從大到小寫(xiě) 讓小屏幕樣式把大屏幕樣式覆蓋 向上覆蓋*/
</style>
</head>
<body>
<div class="row">
<div class="col">div1</div>
<div class="col">div2</div>
<div class="col">div3</div>
<div class="col">div4</div>
</div>
</body>
</html>
響應(yīng)式的開(kāi)發(fā)框架
-
框架幫你封裝好了響應(yīng)式的功能 你只需要使用框架提供的類(lèi)名既可實(shí)現(xiàn)響應(yīng)式布局
-
常見(jiàn)的響應(yīng)式開(kāi)發(fā)框架
- bootstrap: 目前前端最流行的框架 應(yīng)用非常廣泛 移動(dòng) PC都可以使用 代碼風(fēng)格很好 讓快速構(gòu)建網(wǎng)頁(yè)布局 (重點(diǎn))
- AmazeUI: 妹子UI 中國(guó)首個(gè)響應(yīng)式開(kāi)發(fā)框架
- layUI: 響應(yīng)式模塊的UI框架
- MUI : 中國(guó)人開(kāi)發(fā)的針對(duì)移動(dòng)端的UI 也有響應(yīng)式功能(只適配手機(jī)和ipad)
- framework7:構(gòu)造原生APP的框架 UI框架
了解bootstrap框架
bootstrap: 引導(dǎo)程序 引導(dǎo)你開(kāi)發(fā)程序
1. 2011 推特公司2個(gè)前端開(kāi)發(fā)出來(lái)的框架 后面開(kāi)源了之后有很多貢獻(xiàn)者 一起參與開(kāi)發(fā)形成了一個(gè)大型UI框架
2. Bootstrap框架: 代碼比較優(yōu)雅 結(jié)構(gòu)很規(guī)范 代碼也很規(guī)范 框架生態(tài)圈好 使用和開(kāi)發(fā)維護(hù)框架的人很多
3. Bootstrap的好處: 讓我們快速開(kāi)發(fā)頁(yè)面 更方便更快捷
學(xué)習(xí)bootstrap
-
打開(kāi)官網(wǎng) https://v3.bootcss.com/
-
下載bootstrap (推薦下載生產(chǎn)環(huán)境的bootstrap)
bootstrap-3.3.7-dist
如果下載整個(gè)源碼需要解壓使用里面的dist目錄里面的代碼 -
引入bootstrap
- 引入bootstrap.css 樣式
- 引入jquery.js js 因?yàn)閎ootstrap基于jquery 需要先引入jquery
- 引入bootstrap.js JS插件的js文件
-
引包規(guī)范
- 如果依賴(lài)的先引入依賴(lài)的包在引入不依賴(lài)的包
- 有第三方的包先引入第三方的包 再引入自己包
- CSS 文件 通常引入在head中
- JS 文件 通常引入在body的結(jié)束標(biāo)簽的上面(好處就是為了讓頁(yè)面迅速加載出來(lái))
除了一些對(duì)頁(yè)面渲染有幫助的JS必須放在前面
bootstrap文檔(下面是要熟悉的文檔,很重要,具體用法在這個(gè)網(wǎng)站:https://v3.bootcss.com/css/)
- 全局CSS樣式 (一些簡(jiǎn)單的類(lèi)名 只要寫(xiě)類(lèi)名就可以生效對(duì)應(yīng)的樣式)
- 布局容器
- container 固定寬度且居中的版心容器 跟隨頁(yè)面的變化 也會(huì)響應(yīng)式變化寬度
- container-fluid 全屏容器
- 柵格系統(tǒng) 百分比布局的一個(gè)柵格系統(tǒng)
- 分為行和列 類(lèi)似表格tr 和 td
- 列 一行最多分為12列
- 列有4個(gè)類(lèi)名 分別對(duì)應(yīng)4個(gè)屏幕生效列的類(lèi)名
col-lg-x 大屏幕列的類(lèi)名 large
col-md-x 中屏幕的列的類(lèi)名 middle
col-sm-x 小屏幕的列的類(lèi)名 small
col-xs-x 超小屏幕的列的類(lèi)名 extra small - 行必須包含在容器里面 因?yàn)閏ontainer有內(nèi)邊距padding row為了和container的padding抵消就添加了margin-left的負(fù)值 去抵消 所以row需要包含在container容器里面
- 排版
文字對(duì)齊 - 表格
帶邊框 帶條紋等 - 表單
水平排列表單等 - 按鈕
各種顏色 尺寸按鈕 - 輔助類(lèi)
文本顏色 浮動(dòng) 清除浮動(dòng) 顯示隱藏 - 響應(yīng)式工具
控制元素在某個(gè)屏幕隱藏顯示
- 布局容器
- 組件 (靜態(tài)的組件 一些標(biāo)簽組合在一起形成的一個(gè)功能)
- 字體圖標(biāo)
- 下拉菜單
- 按鈕組
- 導(dǎo)航 導(dǎo)航條
- 分頁(yè)
- 警告框
- 媒體對(duì)象
- 列表組
- 面板
- javascript插件 (動(dòng)態(tài)的組件 一些標(biāo)簽組件在一起并且有js交互和功能)
- 模態(tài)框
- 下拉菜單 插件(有交互的)
- 標(biāo)簽頁(yè) (tab欄)
- 工具提示
- 警告框 彈出框
- Collapse 折疊菜單 手風(fēng)琴菜單
- Carousel 輪播圖 旋轉(zhuǎn)木馬
- Affix 吸頂效果
總結(jié)
-
移動(dòng)web: 移動(dòng)端(手機(jī)端)打開(kāi)網(wǎng)頁(yè)網(wǎng)站
-
移動(dòng)web 已經(jīng)不僅僅實(shí)現(xiàn)內(nèi)容顯示 而更多偏向應(yīng)用 能夠提升上網(wǎng)體驗(yàn) 生活體驗(yàn) 稱(chēng)之為應(yīng)用程序了
-
移動(dòng)web: 包含了網(wǎng)頁(yè)(暫時(shí)只學(xué)習(xí)網(wǎng)頁(yè)網(wǎng)站) APP 微信小程序公眾號(hào) 內(nèi)嵌頁(yè)面
-
移動(dòng)端瀏覽器: 都是webkit內(nèi)核 兼容性少
-
移動(dòng)web的開(kāi)發(fā)方式
- 響應(yīng)式方式(一般使用框架): 一個(gè)頁(yè)面同時(shí)適配多個(gè)終端 根據(jù)屏幕變化而自動(dòng)適應(yīng)變化
應(yīng)用: 新建的網(wǎng)站 或者 對(duì)性能要求不是很高 官網(wǎng) 論壇 播客 - 原生方式:針對(duì)每個(gè)端都寫(xiě)一個(gè)頁(yè)面 寫(xiě)死的
應(yīng)用: 老網(wǎng)站 或者對(duì)性能要求很高的 電商 直播 視頻
- 響應(yīng)式方式(一般使用框架): 一個(gè)頁(yè)面同時(shí)適配多個(gè)終端 根據(jù)屏幕變化而自動(dòng)適應(yīng)變化
-
響應(yīng)式開(kāi)發(fā)原理
- 使用JS判斷屏幕寬度 修改樣式
- 使用媒體查詢(xún) 判斷 設(shè)置樣式
- 4種屏幕需要判斷
- 大屏幕lg w >= 1200
- 中屏幕md w >= 992 w < 1200
- 小屏幕sm w >= 768 w < 992
- 超小屏幕xs w < 768
- 媒體查詢(xún)的語(yǔ)法
@media(條件){
//條件成立執(zhí)行的代碼
}
條件通常有3種寫(xiě)法
width:1200px; 寬度等于這個(gè)值
min-width:1200px; 寬度大于等于這個(gè)值 條件從小到大寫(xiě) 讓大的把小的覆蓋
max-width:1200px; 寬度小于等于這個(gè)值 條件從大到小寫(xiě) 讓小的把大的覆蓋
-
響應(yīng)式開(kāi)發(fā)框架: 為了讓響應(yīng)式開(kāi)發(fā)更簡(jiǎn)單快捷
- bootstrap (重點(diǎn)掌握 所有UI框架基礎(chǔ))
- 妹子UI
- layUI
- MUI
- framework7
-
使用bootstrap
- 下載包
- 引包
1. 引入bootstrap.css
1. 引入jquery.js (bootstrap JS插件 基于jquery)
1. 引入bootstrap.js - 使用文檔里面的代碼就有對(duì)應(yīng)的效果
-
bootstrap文檔
- 全局CSS樣式 : 簡(jiǎn)單的類(lèi)名加了就有效果 跟標(biāo)簽無(wú)關(guān)
- 組件 : 組合多個(gè)標(biāo)簽類(lèi)名在一起 形成的靜態(tài)效果 就是組件
- JS插件 : 在靜態(tài)組件的基礎(chǔ)上添加了交互 能夠點(diǎn)擊 能夠動(dòng)等就是插件
-
布局容器
- container 居中
- container-fluid 全屏
- 2個(gè)容器都有padding 要讓內(nèi)容往里面靠 左右15px
-
柵格系統(tǒng)
- 通過(guò)行和列組成的布局一個(gè)系統(tǒng)
- 行row 列 col 類(lèi)似表格的tr td
- 一行最多分為12列
- 行必須放到container 容器里面 或者 col里面 要和父容器padding抵消
- 列需要放到行里面
- 內(nèi)容放到列里面
- 4個(gè)柵格類(lèi)名 col-lg col-md col-sm col-xs 分別會(huì)在對(duì)應(yīng)的屏幕生效
- 列12 自由劃分 也可以等比例劃分 等比例只能被12整除的 1 2 3 4 6 12
- 柵格系統(tǒng)還可以嵌套 嵌套的子row 參照父元素
-
常用的樣式 組件 插件
-
搭建微金所項(xiàng)目
- 創(chuàng)建項(xiàng)目文件夾 把css fonts img lib復(fù)制到項(xiàng)目文件夾(來(lái)源完整版) lib 就是第三方的包
- 創(chuàng)建主頁(yè) 引包
- 寫(xiě)結(jié)構(gòu) 把頁(yè)面分區(qū)域 頭部 導(dǎo)航 輪播圖 特色 預(yù)約 商品 新聞 合作伙伴
- 推薦容器使用id 方便覆蓋樣式 和 方便JS獲取元素
- 使用bootstrap構(gòu)建頁(yè)面的內(nèi)容
- 頭部: 全局樣式里面的: 容器 柵格系統(tǒng) 組件:字體圖標(biāo)
- 導(dǎo)航: 組件:導(dǎo)航條
- 輪播圖: JS插件:carousel輪播圖插件
- 特色介紹: 全局樣式: 容器 柵格系統(tǒng) 組件: 字體圖標(biāo) 媒體對(duì)象
相關(guān)案例查看更多
相關(guān)閱讀
- 網(wǎng)站建設(shè)電話
- 服務(wù)器
- 云南網(wǎng)站建設(shè)百度
- .net網(wǎng)站
- 小程序退款
- web學(xué)習(xí)路線
- 麗江小程序開(kāi)發(fā)
- 云南小程序開(kāi)發(fā)首選品牌
- 小程序定制開(kāi)發(fā)
- 模版消息
- 報(bào)廢車(chē)
- 報(bào)廢車(chē)管理系統(tǒng)
- 大理小程序開(kāi)發(fā)
- 網(wǎng)站建設(shè)選
- 昆明軟件定制
- 云南etc微信小程序
- 云南省住房建設(shè)廳網(wǎng)站
- 網(wǎng)絡(luò)營(yíng)銷(xiāo)
- 云南軟件設(shè)計(jì)
- web前端
- 網(wǎng)站建設(shè)特性
- 網(wǎng)站建設(shè)快速優(yōu)化
- asp網(wǎng)站
- 云南網(wǎng)站建設(shè)公司地址
- 做小程序被騙
- 用戶(hù)登錄
- 微信分銷(xiāo)
- 搜索引擎優(yōu)化
- 網(wǎng)站上首頁(yè)
- 網(wǎng)站建設(shè)哪家強(qiáng)