<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登錄頁面</title>
/*總體的樣式*/
<style>
/*盒子樣式*/
#box{
width: 350px; //寬
height: 450px; //高
border: 1px solid black; //邊框
border-radius: 10px; //邊框弧度
font-family: 黑體; //字體
letter-spacing:8px; //段間距
word-spacing: 10px; //字間距
line-height: 40px; //行高
font-size: 18px; //字大小
padding: 20px; //內邊框
}
/*給'注冊'賦予樣式*/
.register{
width:280px ; //寬
height: 50px; //高
background-color: skyblue; //背景顏色
border-radius: 10px; //邊框弧度
}
/*將所有邊框都改變*/
*{
border-radius: 5px; 邊框弧度
}
/*使用class選擇器,賦予number寬高和邊框*/
.number{
width: 185px; //寬
height: 27px; //高
border-width: 1px; //邊框寬度
}
/*id選擇器*/
#two{
width: 55px; //寬
border-width: 1px; 邊框寬度
}
/*id選擇器*/
#phone{
width: 103px; //寬
}
/*class 選擇器*/
.boxs{
zoom: 75%; //清除浮動
color: darkgray; //顏色
}
/*class選擇器*/
.box_a{
width: 50px; //寬
height: 50px; //高
background-image: url("../image/04.jpg "); //背景圖片
background-repeat: no-repeat; // 是否平鋪
background-size: 50px 25px; //背景尺寸
position: relative; //定位 相對定位
left: 310px; //定位后左移
bottom: 32px; //定位后下移
}
</style>
</head>
<body>
<div id="box">
<h1>請注冊</h1>
<p style="color: darkgray">已有帳號?<a href="https://im.qq.com/index">登錄</a></p>
<form action="" method="post">
<label for="name">用戶名</label>
<input type="text" placeholder="請輸入用戶名" id="name" class="number"> <br>
<label for="phone">手機號</label>
<select name="" id="two" class="number">
<optgroup>
<option style="" class="">+86</option>
</optgroup>
</select>
<input type="text" placeholder="請輸入手機號" id="phone" class="number"> <br>
<label for="mima">密?碼</label>
<input type="password" placeholder="請輸入密碼" id="mima" class="number"> <br>
<label for="mima">驗證碼</label>
<input type="password" placeholder="請輸入驗證碼" id="is" class="number">
<div class="box_a"></div>
<div class="boxs">
<input type="radio" id="" class="accept">閱讀并接受協議<br>
</div>
<input type="submit" value="注冊" class="register" >
</form>
</div>
</body>
</html>
在這里插入圖片描述
*CSS基礎-06-元素大?。ㄔO置元素尺寸height/width、最大值max-height max-width、最小值min-height min-width、設置行間距 line-height)**
在Web前端開發中,對元素大小的精確控制是構建美觀且布局合理的網頁界面的關鍵。CSS提供了豐富的屬性來幫助我們實現這一目標,包括設置元素的寬高(`height`/`width`)、定義最大與最小尺寸(`max-height`/`max-width`和`min-height`/`min-width`),以及調整文本行間距(`line-height`)。本文將深入探討這些屬性的用法、應用場景及示例代碼,助您掌握元素大小調整的核心技巧。
**一、設置元素尺寸:height與width**
**1.1 定義元素高度(height)**
**定義方式:**
```css
element {
height: value;
}
```
其中,`element`代表目標元素的選擇器,`value`可以是以下幾種類型:
- **絕對單位**:如像素(`px`)、厘米(`cm`)、毫米(`mm`)、英寸(`in`)、點(`pt`)等。
- **相對單位**:如百分比(`%`)、視口寬度(`vw`)、視口高度(`vh`)、字體大小(`em`)等。
- **關鍵字**:如`auto`(默認值,由內容決定高度)、`initial`(恢復初始值)、`inherit`(繼承父元素的值)。
**示例代碼:**
```html
<div class="box">
<p>這是一個高度為200px的盒子。</p>
</div>
<style>
.box {
background-color: #f8f9fa;
height: 200px; /* 設置固定高度 */
width: 300px; /* 設置固定寬度,便于觀察效果 */
}
</style>
```
**1.2 定義元素寬度(width)**
**定義方式:**
```css
element {
width: value;
}
```
`width`屬性的值同樣支持絕對單位、相對單位及關鍵字,其使用方法和`height`相同。
**示例代碼:**
```html
<div class="content">
<p>這是一個寬度為80%的自適應容器。</p>
</div>
<style>
.content {
background-color: #f8f9fa;
width: 80%; /* 設置寬度為父元素的80% */
margin: 0 auto; /* 居中顯示 */
}
</style>
```
**二、設定元素最大/最小尺寸:max-height/max-width與min-height/min-width**
**2.1 最大高度/寬度(max-height/max-width)**
**定義方式:**
```css
element {
max-height: value;
max-width: value;
}
```
這兩個屬性用于限制元素的最大尺寸,當元素的實際尺寸超過設定值時,會自動調整到指定的最大值。值的類型與`height`和`width`相同。
**示例代碼:**
```html
<div class="image-container">
<img src="large-image.jpg" alt="Large Image">
</div>
<style>
.image-container {
max-width: 100%; /* 圖片最大寬度不超過父元素寬度 */
max-height: 500px; /* 圖片最大高度不超過500px */
overflow: hidden; /* 隱藏超出部分 */
}
</style>
```
**2.2 最小高度/寬度(min-height/min-width)**
**定義方式:**
```css
element {
min-height: value;
min-width: value;
}
```
`min-height`和`min-width`用于確保元素的最小尺寸,當元素的實際尺寸小于設定值時,會強制擴展到指定的最小值。值的類型與`height`和`width`相同。
**示例代碼:**
```html
<div class="sidebar">
<ul>
<li><a href="#">Link 1</a></li>
<li><a href="#">Link 2</a></li>
<!-- 更多鏈接 -->
</ul>
</div>
<style>
.sidebar {
background-color: #f8f9fa;
min-width: 200px; /* 側邊欄最小寬度為200px */
}
</style>
```
**三、設置行間距:line-height**
**3.1 定義行間距(line-height)**
**定義方式:**
```css
element {
line-height: value;
}
```
`line-height`屬性用于設置元素內文本行之間的垂直間距。值的類型包括:
- **數值**:如`1.5`、`2`等,表示相對于當前字體大小的倍數。
- **絕對單位**:如像素(`px`)、厘米(`cm`)等。
- **百分比**:相對于元素本身的字體大小。
- **關鍵字**:如`normal`(默認值,瀏覽器默認行間距)、`initial`、`inherit`。
**示例代碼:**
```html
<p class="loose-text">這是一段行間距為1.5倍的文本。</p>
<style>
.loose-text {
font-size: 16px;
line-height: 1.5; /* 設置行間距為字體大小的1.5倍 */
}
</style>
```
**四、實戰應用與注意事項**
**4.1 響應式設計**
結合`max-height`/`max-width`、`min-height`/`min-width`與媒體查詢(`@media`),可以輕松實現響應式布局,確保元素在不同屏幕尺寸下保持合適的大小。
**示例代碼:**
```css
@media (max-width: 768px) {
.content {
width: 100%; /* 小于768px時,寬度占滿屏幕 */
}
}
@media (min-width: 768px) and (max-width: 1200px) {
.content {
width: 75%; /* 768px至1200px之間,寬度為75% */
}
}
@media (min-width: 1200px) {
.content {
width: 50%; /* 大于1200px時,寬度為50% */
}
}
```
**4.2 注意事項**
- **`height`與`width`設置為`auto`時,元素的尺寸通常由其內容決定。對于塊級元素,寬度默認為`auto`,高度則受內部內容影響;對于內聯元素,寬度和高度均受內容影響。**
- **使用百分比單位時,`height`的百分比基于包含塊的高度,而`width`的百分比基于包含塊的寬度。**
- **在設置`min-height`時,確保包含塊(父元素)具有足夠的高度或自身元素具有足夠的內容,否則可能無法達到預期效果。**
- **使用`line-height`時,注意與其他文本相關的屬性(如`font-size`、`vertical-align`等)的配合,以保持良好的排版效果。**
通過熟練掌握上述CSS屬性,您將能精準地控制網頁中元素的大小,實現復雜多樣的布局效果。不斷實踐并結合實際項目需求,您的前端開發技能將更上一層樓。
擊右上方紅色按鈕關注“web秀”,讓你真正秀起來
作為程序員的我們,書寫代碼也需要大量的技巧。一份良好的代碼能讓人耳目一新,讓人容易理解,同時也讓自己成就感滿滿。因此,在這里簡單的整理一些CSS開發技巧,希望能讓你寫出耳目一新、容易理解、舒服自然的代碼。
CSS實用技巧第一講:文字處理
本小結主要是圍繞css對文字處理的技巧,有興趣的小伙伴可以收藏一下。
CSS最常用的對齊方式,居中對齊、左對齊(默認)、右對齊,而且實現起來也是非常的簡單。
如下:
p{ text-align: center; text-align: left; text-align: right; }
但是兩端對齊你有用過嗎?
只需要添加text-align-last:justify樣式即可。請看示例:
<div class="justify-text"> <div class="li">賬號</div> <div class="li">密碼</div> <div class="li">電子郵件</div> </div>
scss樣式
.justify-text { .li { padding: 0 20px; margin-top: 10px; width: 100px; background-color: #f13f84; line-height: 40px; text-align-last: justify; color: #fff; list-style: none; &:first-child { margin-top: 0; } } }
CSS實用技巧第一講:文字處理
現代書本上的文字都是從左到右的順序排列,但是古時候不同,文字都是從右至左排列的,現在在很多古籍、牌坊、石碑等上面依舊可以看到從右至左的文字。
css也可以調整文本排版方向,是通過什么屬性控制的呢?
writing-mode 屬性定義了文本在水平或垂直方向上如何排布。
writing-mode: horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr
下面看具體示例:
<div class="bruce flex-ct-x"> <div class="vertical-text"> <h3>詩經</h3> <p> 死生契闊,<br> 與子成說。<br> 執子之手,<br> 與子偕老。 </p> </div> </div>
scss樣式
.vertical-text { writing-mode: vertical-rl; // 文字排版方向 h3 { padding-left: 10px; font-weight: bold; font-size: 18px; color: #d60f5c; } p { line-height: 30px; // 行間距 letter-spacing: 7px; // 文字間距 color: #ee1166; } }
CSS實用技巧第一講:文字處理
文本從右至左排列
<div class="reverse-text"> 紅豆生南國<br/> 春來發幾枝<br/> 愿君多采擷<br/> 此物最相思 </div>
scss樣式
.reverse-text { font-weight: bold; font-size: 30px; color: #f13f84; width: 200px; letter-spacing: -70px; // letter-spacing最少是font-size的2倍 }
CSS實用技巧第一講:文字處理
文本溢出處理不管是PC或者是H5,都是非常常見的,非詳情頁面都會經常用到。
文本溢出處理分為:單行文字溢出 和 多行文字溢出。下面看看具體示例:
單行文字溢出
<div class="ellipsis">昨夜雨疏風驟,濃睡不消殘酒。試問卷簾人,卻道海棠依舊。知否,知否,應是綠肥紅瘦。</div>
scss樣式
.ellipsis { width: 200px; overflow: hidden; // 溢出隱藏 text-overflow: ellipsis; // 溢出修飾 ellipsis省略號 white-space: nowrap; // 文本不會換行 }
CSS實用技巧第一講:文字處理
多行文字溢出
<div class="ellipsis">尋尋覓覓,冷冷清清,凄凄慘慘戚戚。乍暖還寒時候,最難將息。三杯兩盞淡酒,怎敵他、晚來風急!雁過也,正傷心,卻是舊時相識。 滿地黃花堆積,憔悴損,如今有誰堪摘?守著窗兒,獨自怎生得黑!梧桐更兼細雨,到黃昏、點點滴滴。這次第,怎一個愁字了得!</div>
scss樣式
.ellipsis { width: 400px; display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; /* autoprefixer: off */ -webkit-box-orient: vertical; /* autoprefixer: on */ }
CSS實用技巧第一講:文字處理
注意
使用文本溢出處理時,容器一定要定義寬度。
多行文字溢出,scss樣式添加注釋autoprefixer: off并不是為了說明什么,而是,在webpack打包編譯時,如果沒有這個注釋,-webkit-box-orient: vertical會被忽略掉。
在瀏覽器中,當你選擇文本想要copy時,是不是會發現選擇文本會有背景色和文字顏色呢?其實它是可以通過css定義的。
使用::selection自定義文本選擇顏色
<div class="select-color"> <p>紅豆生南國,</p> <p class="special">春來發幾枝。</p> <p>愿君多采擷,</p> <p class="special">此物最相思。</p> </div>
scss樣式
// 全局文本選擇樣式 ::selection { background-color: #f13f84; color: #fff; } .select-color { line-height: 30px; font-weight: bold; font-size: 30px; color: #d60f5c; } // 具體某個選擇器下 文本選擇樣式 .special::selection { background-color: #00b7a3; }
CSS實用技巧第一講:文字處理
有空把CSS3及其選擇器和偽元素偽類等知識點復習一遍,溫故而知新。多使用Chrome的DevTools來調試CSS,提示式的填值能發現很多有趣的屬性。多嘗試不同的方式實現相同功能,多實踐。項目中多試用CSS的新特性,不要總是被低版本瀏覽器束縛著,這樣也一直難以進步。在使用JS完成一個簡單的效果前先想想能不能用純CSS來完成。這樣你的CSS技能就能得到穩步提升。
最后謝謝大家的支持。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。