主頁 > 企業開發 > CSS進階內容——布局技巧和細節修飾

CSS進階內容——布局技巧和細節修飾

2022-07-13 11:10:12 企業開發

CSS進階內容——布局技巧和細節修飾

我們在之前的文章中已經掌握了CSS的大部分內容,但仍有一些內容我們沒有涉略,這篇文章就是為了補充前面沒有涉及的內容,為我們的知識做出補充并且介紹一些布局技巧

當然,如果沒有學習之前的知識,可以到我的主頁中查看之前的文章:秋落雨微涼 - 博客園,

元素的顯示與隱藏

在我們的網頁設計中,也許會有廣告的設計部分

廣告旁常常存在×號來進行廣告的關閉,而這部分內容在CSS中就被稱為元素的顯示與隱藏

本質:

  • 讓一個元素在頁面中隱藏或顯示出來

我們常常提供三種方法:

  • display

  • visibility

  • overflow

讓我們分開一一介紹:

display方法(重點:JS搭配使用)

display屬性用來設定一個元素應如何顯示

我們常用的屬性有:

  • display:none 隱藏元素
  • display:block 使元素轉化為塊級元素并且顯示元素

注意:當display設定為none時,原有位置不再占用!!!

我們下面給出代碼示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- 當我們將display變化為none時,不僅元素隱藏,而且其原有位置也不再占有 -->

    <style>
        .peiqi {
            height: 200px;
            width: 200px;
            background-color: aqua;
            /* 當我們把display設定為none,元素隱藏,且原有位置不再占有,下方的div會占用當前div的位置 */
            display: none;
        }

        .qiaozhi {
            height: 200px;
            width: 200px;
            background-color: red;
            /* 想讓元素重新出現,可以設定為block,block通常為默認選項,不用設定 */
            display: block;
        }
    </style>
</head>
<body>
    <div ></div>
    <div ></div>
</body>
</html>

display常與JS搭配使用,我們在后面章節講到JS會詳細講述

visibility方法

visibility屬性用來表示元素隱藏或者顯示

我們常用的屬性有:

  • visibility:hidden 隱藏
  • visibility:visible 顯示

注意:當visibility元素為hidden時,元素雖然隱藏,但仍保留原來位置,下方元素無法占用!!!

overflow方法

overflow只對盒子中的溢位部分做出反饋

我們常用的屬性有:

  • overflow:visible 顯示
  • overflow:hidden 隱藏
  • overflow:scroll 滑動條
  • overflow:auto 在超出時加上滑動條

我們下面給出示例代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- 我們分別展示四種情況 -->

    <style>
        div {
            height: 200px;
            width: 100px;
            font-size: 14px;
            background-color: pink;
        }

        .w1 {
            /* 使元素隱藏 */
            overflow: hidden;
        }

        .w2 {
            /* 使元素滑動 */
            overflow: scroll;
        }

        .w3 {
            /* 使元素自動化滑動 */
            overflow: auto;
        }

        .w4 {
            /* 使元素顯示 */
            overflow: visible;
        }
    </style>
</head>
<body>
    <div >《原神》是由上海米哈游網路科技股份有限公司制作發行的一款開放世界冒險游戲,于2017年1月底立項 [28]  ,原初測驗于2019年6月21日開啟 [1]  ,再臨測驗于2020年3月19日開啟 [2]  ,啟程測驗于2020年6月11日開啟 [3]  ,PC版技術性開放測驗于9月15日開啟,公測于2020年9月28日開啟 [4]  ,在資料方面,同在官方服務器的情況下,iOS、PC、Android平臺之間的賬號資料互通,玩家可以在同一賬號下切換設備,</div>
    <div >《原神》是由上海米哈游網路科技股份有限公司制作發行的一款開放世界冒險游戲,于2017年1月底立項 [28]  ,原初測驗于2019年6月21日開啟 [1]  ,再臨測驗于2020年3月19日開啟 [2]  ,啟程測驗于2020年6月11日開啟 [3]  ,PC版技術性開放測驗于9月15日開啟,公測于2020年9月28日開啟 [4]  ,在資料方面,同在官方服務器的情況下,iOS、PC、Android平臺之間的賬號資料互通,玩家可以在同一賬號下切換設備,</div>
    <div >《原神》是由上海米哈游網路科技股份有限公司制作發行的一款開放世界冒險游戲,于2017年1月底立項 [28]  ,原初測驗于2019年6月21日開啟 [1]  ,再臨測驗于2020年3月19日開啟 [2]  ,啟程測驗于2020年6月11日開啟 [3]  ,PC版技術性開放測驗于9月15日開啟,公測于2020年9月28日開啟 [4]  ,在資料方面,同在官方服務器的情況下,iOS、PC、Android平臺之間的賬號資料互通,玩家可以在同一賬號下切換設備,</div>
    <div >《原神》是由上海米哈游網路科技股份有限公司制作發行的一款開放世界冒險游戲,于2017年1月底立項 [28]  ,原初測驗于2019年6月21日開啟 [1]  ,再臨測驗于2020年3月19日開啟 [2]  ,啟程測驗于2020年6月11日開啟 [3]  ,PC版技術性開放測驗于9月15日開啟,公測于2020年9月28日開啟 [4]  ,在資料方面,同在官方服務器的情況下,iOS、PC、Android平臺之間的賬號資料互通,玩家可以在同一賬號下切換設備,</div>
</body>
</html>

細節修飾

接下來我們介紹一些CSS中可以幫助美化界面的一些方法

我們會依次介紹到:

  • CSS三角設計
  • 滑鼠樣式
  • 表單輪廓線
  • 文本域禁止拖動指令
  • vertical-align表單文本對齊
  • 圖片底部空白問題
  • 溢位文字采用省略號代替

CSS三角設計

我們在網頁設計中常常看到三角形標志,而這些標志需要一些小技巧才能夠完成

設計三角的要求:

  • div盒子的高度和寬度均設計為0
  • 我們通過div盒子的邊框來形成三角,邊框設定為:任意px solid transport
  • 然后我們通過單獨的邊框設計,來創建不同方向的三角:border-top-color:red;

我們下面給出代碼示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- 我們來設計一個三角形 -->

    <style>
        div {
            /* 首先不需要高和寬 */
            height: 0;
            width: 0;
            /* 整體邊框設計為透明,粗細看需求設計 */
            border: 10px solid transparent;
            /* 然后我們根據需求設計三角朝向和顏色 */
            border-top-color: red;
        }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

滑鼠樣式

我們在網頁中常常會看到滑鼠的各種樣式

最常見的就是滑鼠,然后我們可以看到小手,包括移動,文字和禁止符號

在CSS中有專門的語法來控制滑鼠樣式

div {
	cursor:deafult; 默認
    cursor:pointer;小手
    cursor:move;   移動
    cursor:text;   文本
    cursor:not-allowed;禁止
}

我們直接采用行內CSS來講解以上滑鼠樣式:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <style>
        ul li{
            list-style: none;
        }
    </style>
</head>
<body>
    <ul>
        <li style="cursor: default;">我是默認</li>
        <li style="cursor: pointer;">小手</li>
        <li style="cursor: move;">移動</li>
        <li style="cursor: text;">文本選擇</li>
        <li style="cursor: not-allowed;">禁止符號</li>
    </ul>
</body>
</html>

表單輪廓線

我們在使用input的框架時,通常會有默認的藍色框架,但這樣并不美觀

所以我們常常去除掉這個藍色框架:

input {
	outline : none;
}

文本域禁止拖動指定

我們在使用textare時,在右下角文本域是可以進行拖拽的

但我們在網頁設計時不能隨意讓用戶更改界面,所以我們同樣提供了方法禁止用戶拖拽文本域:

textare {
    resize ; none;
    /* 當然,如果想要去除掉文本域的藍色邊框,我們也可采用outline方法*/
    outline : none;
}

vertical-align表單文本對齊

官方解釋:

  • 針對于行內/行內塊元素做所有元素的垂直對齊方法

語法:

  • 標準格式:vertical-align:positon;
  • 頂部對齊: vertical-align:top;
  • 垂直對齊: vertical-align:middle;
  • 底部對齊: vertical-align:bottom;(默認)

以上vertical-align常用于使表單內的圖片與文本對齊

圖片底部空白問題

問題來源:

  • 當我們插入圖片時,圖片并非緊貼框架,當你設定border時會發現圖片與div中有一定距離
  • 原因主要是因為行內塊元素和文字的基線對齊

解決方法:

  • 給圖片添加vertical-align屬性(推薦)
  • 使圖片轉化為塊級元素display:block;

溢位文字采用省略號代替

當我們的框架承受不住過多文字時,可能出溢位或者突然終止,這樣的網頁設計都是不合標準的

所以我們希望采用省略號來使整個文本不顯得過于生硬

我們分別講述單行文本溢位和多行文本溢位的解決方法:

  • 單行文本溢位:

    1. 強制文本一行顯示:

      white-space:nowrap;

    2. 超出部分省略:

      overflow:hidden;

    3. 省略部分用省略號顯示:

      text-overflow:ellipsis;

  • 多行文本溢位:(方法過于復雜且兼容性不好,不推薦使用)

    1. 設定省略超出部分且讓省略部分讓省略號代替:

      overflow:hidden;

      text-overflow:ellipsis;

    2. 彈性伸縮盒子模型顯示:

      display: -webkit-box;

    3. 限制在一個塊元素顯示的文本的行數:

      -webkit-line-clamp: 2;

    4. 設定或檢索伸縮盒物件的子元素排列方法:

      -webkit-box-orient: vertical;

我們下面給出代碼示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- 首先我們先講解單行文本溢位 -->

    <style>
        .lone {
            /* 我們先設計一下盒子大小和bcc */
            height: 20px;
            width: 100px;
            font-size: 10px;
            line-height: 20px;
            background-color: pink;

            /* 第一步,單行文本當然要先設定文本強制在一行內顯示 */
            white-space: nowrap;
            /* 第二步:將超出內容省略 */
            overflow: hidden;
            /* 第三步:我們要用省略號來代替省略內容 */
            text-overflow: ellipsis;
        }
    </style>

    <!-- 然后我們來介紹一下多行文本溢位 -->

    <style>
        .more {
            /* 我們先設計一下盒子大小和bcc */
            /* 注意,這里需要手動設定高度,使多余行數內容不顯示出來 */
            height: 40px;
            width: 100px;
            font-size: 10px;
            line-height: 20px;
            background-color: pink;
            margin-top: 20px;

            /* 1.設定省略超出部分且讓省略部分讓省略號代替: */
            overflow: hidden;
            text-overflow: ellipsis;

            /* 2.彈性伸縮盒子模型顯示: */
            display: -webkit-box;

            /* 3.限制在一個塊元素顯示的文本的行數: */
            -webkit-line-clamp: 2;

            /* 4.設定或檢索伸縮盒物件的子元素排列方法: */
            -webkit-box-orient: vertical;
        }
    </style>
</head>
<body>
    <div >游戲發生在一個被稱作“提瓦特”的幻想世界,在這里,被神選中的人將被授予“神之眼”,導引元素之力,</div>
    <div >游戲發生在一個被稱作“提瓦特”的幻想世界,在這里,被神選中的人將被授予“神之眼”,導引元素之力,</div>
</body>
</html>

常見布局技巧

我們可以采用一些技巧幫助我們更好地布局:

margin負值運用

  1. 采用負值解決邊框組合問題

我們在橫向排版采用float時,在存在邊框時,左右兩個邊框會導致中間邊框變粗

這時我們就可以采用margin方法使整體向左移動,使邊框進行覆寫,從而減小邊框粗細程度

我們給出案例解釋:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- 我們希望去除中間邊框粗大的部分 -->

    <style>
        ul>li {
            float: left;
            list-style: none;
            height: 200px;
            width: 100px;
            background-color: pink;
            border: 1px solid red;

            /* 我們使外邊距為-1,相當于向左移動 */
            margin-left: -1px;
        }
    </style>
</head>
<body>
    <ul>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
</body>
</html>
  1. 變色壓制性

在上方我們使用margin去除掉邊框變粗問題后

如果我們希望在hover該盒子后使邊框發生顏色變化,但后方邊框會壓住前方邊框導致效果失效

所以我們給出兩種方法來解決:

  • 使用相對定位position:relative;
  • 使用層級選擇器z-index:1;

我們下面給出代碼示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <!-- 我們希望去除中間邊框粗大的部分 -->

    <style>
        ul>li {
            float: left;
            list-style: none;
            height: 200px;
            width: 100px;
            background-color: pink;
            border: 1px solid red;

            /* 我們使外邊距為-1,相當于向左移動 */
            margin-left: -1px;
        }

        ul>li:hover {
            border-color: yellow;
            /* 使用positon或者z-index來解決 */
            position: relative;
            z-index: 1;
        }
    </style>
</head>
<body>
    <ul>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
</body>
</html>

文字圍繞浮動元素

當我們文字和圖片同時使用時,為了防止圖片壓住文字導致文字顯示不全,我們常常采用文字圍繞圖片的形式

而實作這一目的的主要解決方法是采用float的浮動原理

我們通過一個案例來解釋:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            height: 100px;
            width: 200px;
            background-color: pink;
            margin: 100px auto;
        }

        .img {
            /* 設定浮動,使文字和圖片在同一行且不覆寫 */
            float: left;
            height: 90px;
            width: 50px;
            /* 我們可以稍微設計邊框使圖片和字體相差一些距離使其更加美觀 */
            margin-right: 5px;
        }

        .img img {           
            /* 設定圖片和圖片盒子一樣大 */
            width: 100%;
        }
    </style>
</head>
<body>
    <!-- 首先我們創建一個大盒子來同時裝圖片和文字 -->
    <div >
        <!-- 創建一個裝圖片的盒子來控制大小 -->
        <div ><img src="https://www.cnblogs.com/Resources/picture/1.jpeg" alt=""></div>
        <div >紗霧老師,你好鴨</div>
    </div>
</body>
</html>

行內塊巧妙運用

我們常常需要用到頁面控制框架,我們將給出一個案例用來講解行內塊應用于頁面控制框架

案例圖片:

案例代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <style>
        /* 對整體去除邊距 */
        * {
            padding: 0;
            margin: 0;
        }

        /* 對大盒子進行設計 */
        .box {
            /* 使全部元素水平居中 */
            text-align: center;
        }

        /* 對盒子的a做出設計 */
        .box a{
            /* 當a作為行內塊元素,就可以設計高寬,并受水平居中影響 */
            display: inline-block;
            width: 36px;
            height: 36px;
            line-height: 36px;
            background-color: #f7f7f7;
            border: 1px solid #ccc;
            text-align: center;
            text-decoration: none;
            color: #333;
        }

        /* 對最前面和最后面的單獨設計寬度使其放下內容 */
        .box .prev,
        .box .next{
            width: 85px;
        }

        /* 對兩個需要單設的元素設計 */
        .box .current,
        .box .cls{
            border: 1px solid transparent;
            background-color: transparent;
        }

        /* 設定跳轉框的大小 */
        .box input{
            width: 45px;
            height: 36px;
            outline: none;
            border: 1px solid #ccc;
        }

        .box button{
            width: 60px;
            height: 36px;
            background-color: #f7f7f7;
            border: 1px solid #ccc;
        }
    </style>
</head>
<body>
    <div >
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#" >&lt;&lt;上一頁</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#" >2</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#">3</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#">4</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#">5</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#">6</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#" >...</a>
        <a href="https://www.cnblogs.com/qiuluoyuweiliang/p/#" >下一頁&gt;&gt;</a>
        <!-- 我們還需要一個跳轉頁面設計 -->
        跳轉到
        <input type="text">
        頁
        <input type="button" value="https://www.cnblogs.com/qiuluoyuweiliang/p/確定">
    </div>
</body>
</html>

整體CSS初始化

我們在進行網頁設計時,CSS本身會有很多不美觀的設定

我們需要在開始前就對CSS進行初始化以便于我們后期的網頁設計

我們將給出CSS框架中所有需要初始化的部分并給出相關解釋,下面給出代碼:

/* 所有標簽需要清除內外邊距 */
* {
    margin: 0;
    padding: 0;
}

/* em斜體操作 */
em {
    font-style: normal;
}

/* li需要去除前方小圓點 */
li {
    list-style: none;
}

/* 圖片需要設定無邊框(照顧低版本瀏覽器),并設定垂直對齊用來解決圖片底部有縫隙問題 */
img {
    border: 0;
    vertical-align: middle;
}

/* 我們希望經過button時,滑鼠變為小手 */
button {
    cursor: pointer;
}

/* 對于鏈接我們去除底部線,設定顏色 */
a {
    color: #666;
    text-decoration: none;
}

/* 對于鏈接我們經過時換色 */
a:hover {
    color:#333;
}

/* 對于button和input,我們希望進行設定好字體需求 */
button,input {
    font-family: 微軟雅黑;
}

/* 對于body整體我們可以先定好字體的相關設定 */
body {
    background-color: #fff;
    font: 12px/1.5 微軟雅黑;
    color: #333;
}

/* 最后我們需要設定clearfix,在設計時可以直接使用 */
.clearfix {
    *zoom: 1;
}

.clearfix::after{
    visibility: hidden;
    clear: both;
    display: block;
    content: "";
    height: 0;
}

結束語

好的,那么關于CSS的補充內容就到這里,希望上面的講解能給你帶來幫助!

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

標籤:Html/Css

上一篇:thymeleaf實作前后端資料交換

下一篇:sass語法嵌套規則與注釋講解

標籤雲
其他(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