Django來敲門~第一部分【8.網(wǎng)頁中的css/js/image處理】

古之善為士者,微妙玄通,深不可識
——老子《道德經(jīng)》


本節(jié)內(nèi)容

  • 給頁面添加樣式修飾

1. 頁面樣式處理

通常情況下,網(wǎng)頁開發(fā)時,頁面中的樣式是通過外部css樣式進(jìn)行處理的,外部的css文件加載在Django中,需要進(jìn)行簡單的處理

首先取保我們的mysite/mysite/settings.py配置文件中,包含了STATIC_URL='/static/'的配置(默認(rèn)是已經(jīng)配置的)

我們在應(yīng)用模塊文件夾下,創(chuàng)建一個目錄static/專門用于存放css樣式文件,創(chuàng)建一個目錄images/專門保存頁面中用到的圖片,創(chuàng)建一個lib/專門用于保存第三方的文件(如jquery、bootstrap等等)

創(chuàng)建mysite/polls/static/style.css樣式文件,用于修飾我們的首頁index.html樣式,編輯內(nèi)容如下

*{margin:0;padding:0;}
h1{font-size:18px;color:#069;font-weight:bolder;}
ul{list-style:none;font-size:16px;}
ul > li{height:20px;line-height:20px;font-family: "微軟雅黑"}

因?yàn)槲覀兊捻?xiàng)目是用在網(wǎng)絡(luò)服務(wù)器上的,所以在mysite/polls/templates/index.html文件中引入樣式,首先要通過{%load static%}獲取static/文件夾的絕對路徑,然后在頁面中,使用{% static '路徑'%}的形式來使用;

<!DOCTYPE html>

<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    {% load static %}
    <link rel="stylesheet" href="{% static 'polls/style.css' %}">
    <title>投票模塊首頁</title>
    <link rel="stylesheet" href="">
</head>
<body>  
    <h1>投票模塊首頁</h1>
    ![]({% static 'polls/images/my.jpg'%})
    {%if question_list%}
    <ul>
        {%for question in question_list%}
        <li><a href="{%url 'polls:detail' question.id%}">{{question.question_text}}</a></li>
        {%endfor%}
    </ul>
    {%else%}
        <p>Congratulations,目前沒有什么問題</p>
    {%endif%}
</body>
</html>

完成上述代碼之后,我們打開網(wǎng)頁訪問應(yīng)用的首頁,就可以看到我們的樣式和圖片都加載OK了

網(wǎng)頁中使用樣式和圖片

2. 使用第三方模塊Bootstrap

進(jìn)入http://www.bootcss.com下載bootstrap框架文件,這里我使用的是bootstrap3.4的版本。下載好之后,將解壓得到的bootstrap文件中的css/、js/、font/三個文件拷貝到我們項(xiàng)目的mysite/polls/static/lib/文件夾下

bootstrap中文官網(wǎng)

項(xiàng)目目錄結(jié)構(gòu)


項(xiàng)目目錄結(jié)構(gòu)

接下來,我們編輯mysite/polls/templates/index.html頁面,引入bootstrap并添加它的樣式處理如下:

<!DOCTYPE html>

<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    {% load static %}
    <link rel="stylesheet" href="{% static 'polls/lib/bootstrap3.4/css/bootstrap.min.css' %}">
    <title>投票模塊首頁</title>
    <link rel="stylesheet" href="">
</head>
<body>  
    <div class="container">
        <div class="row">
            <div class="page-header">
                <h1>用戶問題列表 <small>解決方案提供平臺</small></h1>
            </div>
        </div>
        <div class="row">
            {%if question_list%}
            <table class="table table-hover table-striped">
                <tr>
                    <th>問題編號</th>
                    <th>問題描述</th>
                    <th>操作</th>
                </tr>
                {%for question in question_list%}
                <tr>
                    <td>{{forloop.counter}}</td>
                    <td>{{question.question_text}}</td>
                    <td><a href="{% url 'polls:vote' question.id%}">查看詳細(xì)</a></td>
                </tr>
                {%endfor%}
            </table>
            {%else%}
                <p>Congratulations,目前沒有什么問題</p>
            {%endif%}
        </div>
    </div>
</body>
</html>

重新啟動項(xiàng)目,我們打開瀏覽器訪問項(xiàng)目首頁,可以看到一個非常漂亮的首頁呈現(xiàn)在了眼前

使用bootstap樣式修飾的網(wǎng)頁

本節(jié)內(nèi)容對于靜態(tài)文件(如樣式表文件css、腳本文件js、圖片文件image)的處理就說到這里。大家如果有什么問題的話可以留言的哦!


Django來敲門
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,093評論 1 92
  • 天下難事必作於易。天下大事必作於細(xì)。是以圣人終不為大,故能成其大——老子《道德經(jīng)》 本節(jié)內(nèi)容 HTML頁面的渲染 ...
    大牧莫邪閱讀 1,315評論 1 5
  • 上善若水。水善利萬物而不爭——老子《道德經(jīng)》 本節(jié)內(nèi)容 網(wǎng)頁中的表單定義 表單提交數(shù)據(jù)的處理 1. 網(wǎng)頁中的表單定...
    大牧莫邪閱讀 646評論 4 2
  • 你回過頭 微微揚(yáng)起嘴角 風(fēng)帶著時間吹起你的頭發(fā) 當(dāng)我 看向你的時候 你打開課本 卻說著自己的悲歡 影子離開我,吻了...
    愛斯基摩人we閱讀 470評論 0 6
  • 隨著科技的發(fā)展,低頭族現(xiàn)在隨處可見:路上,地鐵上,公交上,聚會上等等。每次和網(wǎng)友見面,都會有種見光死的感覺。你怎么...
    木言花開閱讀 644評論 0 3

友情鏈接更多精彩內(nèi)容