前端(四)

来源:https://www.cnblogs.com/zuanzuan/archive/2018/12/08/10087876.html
-Advertisement-
Play Games

前端之常用標簽的使用、邊界圓角、精靈圖以及盒模型的佈局 前言 上篇博客介紹了組合選擇器,包括四種,分別是群組選擇器、後代(子代)選擇器、兄弟(相鄰選擇器)及交集選擇器;a 標簽的四大偽類選擇器,a:link、a:hover、a:active、a:visited,其中 hover 和 active 也 ...


前端之常用標簽的使用、邊界圓角、精靈圖以及盒模型的佈局

前言

上篇博客介紹了組合選擇器,包括四種,分別是群組選擇器、後代(子代)選擇器、兄弟(相鄰選擇器)及交集選擇器;a 標簽的四大偽類選擇器,a:link、a:hover、a:active、a:visited,其中 hover 和 active 也可以用於其他標簽,索引選擇器包括三種

<!-- 先位置後類型 -->
div:nth-child(1) 
<!-- 先類型後位置 -->
div:nth-of-type(1)
<!-- 取反,先找到有 abc 和 div 類的標簽,然後取反-->
.div:not([abc])

最後介紹了最最重要的盒模型,盒模型由四部分組成由內到外分別是:content+padding+border+margin,其中 content+padding+border 參與盒子顯示,margin 參與盒子佈局。

常用標簽的使用

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>常用標簽的使用</title>

    <!-- SEO -->
    <!-- <meta name="keywords" content="8-12個以英文逗號隔開的單詞或詞語"> -->
    <!-- <meta name="description" content="80字以內的一段話,與網站內容相關"> -->
    <!-- 移動適配 -->
    <!-- <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> -->
    
    <link rel="icon" type="image/x-icon" href="http://www.baidu.com/favicon.ico">

    <style type="text/css">
        .img {
            /*根據需求,是指定高還是指定寬,設置一個,另一個會等比縮放*/
            /*width: 200px;*/
            height: 100px;
        }
        
        /*四個偽類*/
        /*reset操作*/
        a {
            color: #333;
            text-decoration: none;
        }

        /*ul的reset操作*/
        ul {
            margin: 0;
            padding: 0;
            list-style: none;
            /*margin-left: 40px;*/
        }
    </style>
</head>
<body>
    <!-- 1.設置錨點: 錨點名page_top -->
    <a href="" name="page_top"></a>

    <img class="img" src="./img/timg.jpg" alt="">

    <a href="00_複習預習.html">前往00頁面</a>
    <!-- 前往本頁面中個某個位置: Top => 錨點 -->
    <!-- 1.設置錨點 2.設置前往錨點的a轉跳 -->

    <ul>
        <li>列表項</li>
        <li>列表項</li>
        <li>列表項</li>
        <li>列表項</li>
        <li>列表項</li>
    </ul>

    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <!-- 通配標簽頁可以設置錨點 -->
    <!-- <a href="" name="t_123"></a> -->
    <div id="t_123">123</div>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <!-- 2.設置前往錨點的a轉跳: #錨點名 -->
    <a href="#page_top">Top</a>
    <a href="#t_123">123</a>
    <a href="00_複習預習.html#md">前往錨點</a>
</body>
</html>

邊界圓角

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>邊界圓角</title>
    <style type="text/css">
        .box {
            width: 200px;
            height: 200px;
            background-color: orange;
        }
        .box {
            /*邊界圓角*/

            /*百分比控制*/
            /*border-radius: 50%;*/

            /*實際像素控制*/
            /*border-radius: 20px;*/

            /*橫縱分離  橫 / 縱*/
            /*border-radius: 20px / 50%;*/

            /*左上為第一個角, 順時針賦值, 無值找對角*/
            /*左上橫30px 右上橫100px 右下橫=左上橫 左下橫=右上橫, 四角縱向全是50%*/
            /*border-radius: 30px 100px / 50%;*/
            
            /*單獨設置時, 橫向 縱向*/
            /*border-top-left-radius: 50% 100%;
            border-top-right-radius: 50% 100%;*/
            
            border-radius: 50% 50% 0 0 / 100% 100% 0 0;
        }
    </style>
</head>
<body>
    <div class="box"></div>
</body>
</html>

背景樣式

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>背景樣式</title>
    <style type="text/css">
        .box, .wrap {
            width: 200px;
            height: 200px;
            background-color: orange;
        }
        .wrap {
            /*圖片過大會顯示不全*/
            background-image: url('img/timg.jpg');
            /*規定背景圖片顯示尺寸*/
            background-size: 200px 200px;
        }
        .box {
            /*圖片過小會平鋪*/
            background-image: url('img/123.png');
            /*平鋪:repeat-x | repeat-y | repeat | no-repeat*/
            background-repeat: no-repeat;
            /*位置(定位): 可以寫具體數值,也可以寫位置單詞*/
            /*background-position: 10px center;*/
            /*background-position: right bottom;*/
            /*background-position: center center;*/

            /*設置一個值時,控制的是x軸,y軸取center*/
            /*設置;兩個值時,第一個值控制x,第二個值控制y*/
            background-position: 10px 40px;

            /*整體設置*/
            background: url('img/123.png') red no-repeat 50px 50px;
        }
        /*註: 實際開發中,資源圖片大小一定要與顯示區域等大*/
    </style>
</head>
<body>
    <img src="img/123.png" alt="">
    <div class="box"></div>
    <div class="wrap"></div>
</body>
</html>

精靈圖

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>精靈圖</title>
    <style type="text/css">
        .box {
            width: 500px;
            height: 100px;
            /*height: 300px;*/
            border: 5px solid black;
        }
        .box {
            background-image: url('img/bg.png');
            background-position: 0 -150px;
        }
        .box:hover {
            cursor: pointer;
            background-position: 0 -250px;
        }
        /*1.顯示區域一定要與精靈圖目標小圖大小一致*/
        /*2.通過背景圖片定位方式將目標小圖移至顯示位置*/
    </style>

    <style type="text/css">
        .lt1 {
            width: 155px;
            height: 48px;
            background: url('img/bg.png') no-repeat 0 0;
        }
        .lt1:hover {
            cursor: pointer;
            background: url('img/bg.png') no-repeat 0 -48px;
        }
    </style>
</head>
<body>
    <!-- 精靈圖: 各種小圖拼接起來的一張大圖 -->
    <!-- 為什麼使用精靈圖: 減少請求次數, 降低性能的消耗, 二次載入圖片資源時極為迅速(不在需要發送請求) -->
    <div class="box"></div>
    <div class="lt1"></div>
</body>
</html>

盒模型佈局

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>盒模型佈局細節</title>
    <style type="text/css">
        .sup {
            width: 500px;
            height: 100px;
            background: orange;
        }
        .sub {
            width: 50px;
            height: 50px;
            background-color: red;
        }
        /*sub在sup中 水平居中*/
        .sub {
            /*margin-left: auto;
            margin-right: auto;*/
            margin: 0 auto;
        }
        /*垂直居中*/
        .sub {
            margin-top: 24px;
        }
        /*margin坑: 父子聯動*/
        /*.box {
            width: 1px;
            height: 1px;
        }*/
        /*解決一: 設置border-top*/
        .sup {
            /*border-top: 1px solid transparent;
            height: 99px;*/
        }
        /*解決二: 設置padding-top*/
        .sup {
            padding-top: 1px;
            height: 99px;
        }


        /*margin坑: 上兄弟margin-bottom與下兄弟margin-top重合, 取大值*/
        /*解決方案: 只設置一個,建議設置下兄弟margin-top*/

        /*margin佈局: 下盒子的垂直起始位置決定於同結構中上盒子的margin結束位置;水平起始位置就是父級content最左側*/
    </style>
</head>
<body>
    <div class="sup">
        <!-- <div class="box"></div> -->
        <div class="sub"></div>
    </div>
</body>
</html>

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Agax局部非同步刷新全稱ASynchronous JavaScript And XML.使用Javascript代碼獲取伺服器的數據,Ajax當中有兩個請求方法,一個是get方法,一個是post請求方法。 ①get請求方法:請求參數在URL的後面,多個參數之間用&連接。 ②post請求方法:請求參在 ...
  • 一直以來,因為團隊項目迭代節奏很快,每次發佈的更新日誌和版本更新都是通過人肉來完成的。有時候實在忙的團團轉,對於手動的寫這些更新信息就顯得力不從心了。對於團隊新來的小伙伴,有時候遇到些緊急情況,就更顯的亂糟糟,還是得麻煩團隊資深的同學。顯然這些工作,用自動化工具再適合不過了。 本文是一篇項目自動化方 ...
  • 記錄看到或者用到的js代碼,長期更新! 判斷是否是正整數 解析: number 0 轉換成數字,再通過位移運算(|)判斷是否跟原數字相等 安全檢查javascript的類型 ps: 上述方法適用於基本的數據類型和內置對象,而對於自定義對象是無效的。 判斷一個值是否可用做數字 如果是有限數值,或者可以 ...
  • 一、說一下 首先保證node環境已經安裝完畢,npm能正常使用,安裝可自行百度,比較簡單,在此不做贅述。 二、直接開碼 安裝 註釋: express:安裝express框架 express-generator:安裝express生成器,可快速生成一個應用的骨架 -g:全局安裝 註釋: -e:簡寫,全 ...
  • echarts繪製地圖時,提供了js內部註冊,也提供了json數據手動註冊,這兩種都可以繪製對應地圖,但有一點不同的是,js內部只註冊了中國地圖和世界地圖,而json數據提供了世界,中國,中國城市的數據 手動註冊:引入json數據,使用 echarts.registerMap('china', ch ...
  • 在javascript中,當系統載入構造函授後 ,會自動在記憶體中增加一個對象,這個對象就是原型對象。構造函數和原型對象在記憶體中表現為相互獨立,但兩者之間還存在聯繫,構造函數的prototype是原型對象,而原型對象的constructor是構造函數。 創建對象的方法 字面量、構造函數、Object. ...
  • 記錄一下上傳文件時將文件數據轉為Base64的方法 通過 FileReader對象創建一個實例,然後使用 readAsDataURL方法將數據轉為Base64格式 註意: 讀取過程是非同步的 綁定onload事件,該事件在數據讀取完成後觸發 具體代碼(react項目中): const reader = ...
  • 事件委托 1. 事件流 事件流描述的是從頁面中接收事件的順序。 JS高級程式設計(第3版) 規定的事件流有三個階段:①事件 捕獲 階段、②處於 目標 階段、③事件 冒泡 階段 2. 事件委托 當需要添加的事件過多時,可以使用 事件委托 ,而事件委托實際上利用了事件 冒泡 的特性。 使用事件委托還需了 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...