背景顏色徑向漸變
創(chuàng)新互聯(lián)建站專注于淄博企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計(jì),成都商城網(wǎng)站開發(fā)。淄博網(wǎng)站建設(shè)公司,為淄博等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)
css3漸變 gradients
linear gradients 線性漸變:向上下左右,對(duì)角方向
radial gradients 徑向漸變:由它的中心定義
瀏覽器支持:-webkit-(谷歌、safari) -moz-(火狐) -o-(歐朋) 注:標(biāo)準(zhǔn)語法必須放在最后!?。。。。。。。。?/p>
background: linear-gradient(direction, color-stop1, color-stop2, ...);
//direction: top、left、right、bottom、
對(duì)角線:left top、bottom right、……
background: linear-gradient(angle, color-stop1, color-stop2);//使用角度
//angle :-180deg——0deg——180deg
多個(gè)顏色節(jié)點(diǎn):
background: -webkit-linear-gradient(red, green, blue); /* Safari 5.1 - 6.0 */ //默認(rèn)平均分布
background: -webkit-linear-gradient(red 10%, green 85%, blue 90%); //不均勻分布
使用透明度:
background: -webkit-linear-gradient(left, rgba(255,0,0,0), rgba(255,0,0,1)); /* Safari 5.1 - 6.0 */
重復(fù)的線性漸變:
background: -webkit-repeating-linear-gradient(red, yellow 10%, green 20%);
css3 徑向漸變
background: radial-gradient(center, shape size, start-color, ..., last-color);
//shape 參數(shù)定義了形狀。它可以是值 circle 或 ellipse。其中,circle 表示圓形,ellipse 表示橢圓形。默認(rèn)值是 ellipse。
//size 參數(shù)定義了漸變的大小。它可以是以下四個(gè)值:
closest-side
farthest-side
closest-corner
farthest-corner //默認(rèn)
重復(fù)徑向漸變
background:-webkit-repeating-radial-gradient(red, yellow10%, green15%);
css3新單位vw、vh、vmin、vmax的使用詳解
1vw vh vmin vmax的含義
都是相對(duì)于視窗大小來決定的,單位類似%
視窗viewport是你的瀏覽器實(shí)際顯示內(nèi)容的區(qū)域,換句話說是你的不包括工具欄和按鈕的網(wǎng)頁瀏覽器。
vw:視窗寬度的百分比(1vw代表視窗寬度的1%)
vh:視窗高度的百分比
vmin:當(dāng)前vw和vh中較小的一個(gè)
vmax:當(dāng)前vw和vh中較大的一個(gè)
2vw、vh與%百分比的區(qū)別
1、%是相對(duì)于父級(jí)元素的大小設(shè)定的比率,vw,vh是視窗大小決定的。
2、vw、vh優(yōu)勢(shì)在于能夠直接獲取高度,而使用%在沒有設(shè)置body的高度的情況下,是無法正確獲得可視區(qū)域的高度的,所以這是超級(jí)棒的。
3,vmin、vmax 用處
做移動(dòng)頁面開發(fā)時(shí),如果使用 vw、wh 設(shè)置字體大小(比如 5vw),在豎屏和橫屏狀態(tài)下顯示的字體大小是不一樣的。
由于 vmin 和 vmax 是當(dāng)前較小的 vw 和 vh 和當(dāng)前較大的 vw 和 vh。這里就可以用到 vmin 和 vmax。使得文字大小在橫豎屏下保持一致。
4,瀏覽器兼容性
(1)桌面 PC
Chrome:自 26 版起就完美支持(2013年2月)
Firefox:自 19 版起就完美支持(2013年1月)
Safari:自 6.1 版起就完美支持(2013年10月)
Opera:自 15 版起就完美支持(2013年7月)
IE:自 IE10 起(包括 Edge)到現(xiàn)在還只是部分支持(不支持 vmax,同時(shí) vm 代替 vmin)
(2)移動(dòng)設(shè)備
Android:自 4.4 版起就完美支持(2013年12月)
iOS:自 iOS8 版起就完美支持(2014年9月)
justify-content
justify-content用于設(shè)置或檢索彈性盒子元素在主軸(橫軸)方向上的對(duì)齊方式。
提示:使用align-content屬性對(duì)齊交叉軸上的各項(xiàng)(垂直)。
justify-content:flex-start | flex-end | center |space-between | space-around | inital | inherit;
屬性值:
flex-start:默認(rèn)值。項(xiàng)目位于容器的開頭。
flex-end:項(xiàng)目位于容器的結(jié)尾。
center:項(xiàng)目位于容器的中心。
space-between:項(xiàng)目位于各行之間留有空白的容器內(nèi)。
space-around:項(xiàng)目位于各行之前、之間、之后都留有空白的容器內(nèi)。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
align-items:
align-items:屬性定義flex子項(xiàng)在flex容器的當(dāng)前行的側(cè)軸(縱軸)方向上的對(duì)齊方式。
align-items:stretch | center | flex-start | flex-end | baseline | initial | inherit;
stretch : 默認(rèn)值。元素被拉伸以適應(yīng)容器。子元素會(huì)被拉伸到父元素的高度。
center:元素位于容器的中心。
flex-start:元素位于容器的開頭。
flex-end:元素位于容器的結(jié)尾。
baseline:元素位于容器的基線上。
如彈性盒子元素的行內(nèi)軸與側(cè)軸為同一條,則該值與"flex-start"等效。其它情況下,該值將與基線對(duì)齊。
css基線和行高:
CSS align-content 屬性
align-content屬性在彈性容器內(nèi)的各項(xiàng)沒有占用交叉軸上所有可用的空間時(shí)對(duì)齊容器內(nèi)的各項(xiàng)。
align-content:stretch | center | flex-start | flex-end | space-between | space-around | initial | inherit;
stretch: 默認(rèn)值。元素被拉伸以適應(yīng)容器。
各行將會(huì)伸展以占用剩余的空間。如果剩余的空間是負(fù)數(shù),該值等效于“flex-start”。在其它情況下,剩余空間被所有行平分,以擴(kuò)大它們的側(cè)軸尺寸。
center:元素位于容器的中心。
flex-start: 元素位于容器的開頭。
flex-end:元素位于容器的結(jié)尾。
space-between:元素位于各行之間留有空白的容器內(nèi)。
space-around:元素位于各行之前、之間、之后都留有空白的容器內(nèi)。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
css align-self屬性
align-self屬性定義flex子項(xiàng)單獨(dú)在側(cè)軸(縱軸)方向上的對(duì)齊方式。
注意:align-self屬性可重寫靈活容器的align-items屬性。
align-self:auto | stretch | center | flex-start | flex-end | baseline | initial | inherit;
auto: 默認(rèn)值。元素繼承了它的父容器的align-items屬性。如果沒有父容器則為“stretch”
stretch:元素被拉伸以適應(yīng)容器。
center:元素位于容器的中心。
flex-start:元素位于容器的開頭。
flex-end:元素位于容器的結(jié)尾。
baseline:元素位于容器的基線上。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
css animation 動(dòng)畫屬性
使用簡(jiǎn)寫屬性把a(bǔ)nimation綁定到一個(gè)
元素。
div{
animation:mymove 5s infinite;
-webkit-animation:mymove 5s infinite;
}
animation: name duration timing-function delay iteration-count direction fill-mode play-state;
animation-name:指定要綁定到選擇器的關(guān)鍵幀的名稱。
animation-duration:動(dòng)畫指定需要多少秒或毫秒完成。
animation-timing-function:設(shè)置動(dòng)畫將如何完成一個(gè)周期。
linear:動(dòng)畫從頭到尾的速度是相同的。
ease:默認(rèn)。動(dòng)畫以低速開始,然后加快,在結(jié)束前變慢。
ease-in:動(dòng)畫以低速開始。
ease-out:動(dòng)畫以低速結(jié)束。
ease-in-out:動(dòng)畫以低速開始和結(jié)束。
cubic-bezier(n,n,n,n):在cublic-bezier函數(shù)中自己的值??赡艿闹凳菑?到1的數(shù)值。貝茲曲線
animation-delay:設(shè)置動(dòng)畫在啟動(dòng)前的延遲間隔。 負(fù)值:-2s請(qǐng)注意動(dòng)畫將跳過2秒進(jìn)入動(dòng)畫周期。
animation-iteration-count :定義動(dòng)畫的播放次數(shù)。
n: 一個(gè)數(shù)字,定義應(yīng)該播放多少次動(dòng)畫。
infinite:指定動(dòng)畫應(yīng)該播放無限次(永遠(yuǎn));
animation-direction:指定是否應(yīng)該輪流反向播放動(dòng)畫。
normal:默認(rèn)值。動(dòng)畫按正常播放。
reverse:動(dòng)畫反向播放。
alternate:動(dòng)畫在奇數(shù)次(1、3、5……)正向播放,在偶數(shù)次(2、4、6、……)反向播放。
alternate-reverse:動(dòng)畫在奇數(shù)次(1、3、5……)反向播放,在偶數(shù)次(2、4、6……)正向播放。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
animation-fill-mode:規(guī)定當(dāng)動(dòng)畫不播放時(shí)(當(dāng)動(dòng)畫完成時(shí),或當(dāng)動(dòng)畫有一個(gè)延遲未開始播放時(shí)),要應(yīng)用到元素的樣式。
none:默認(rèn)值。動(dòng)畫在動(dòng)畫執(zhí)行之前和之后不會(huì)應(yīng)用任何樣式到目標(biāo)元素。
forwards:在動(dòng)畫結(jié)束后(由animation-iteration-count決定),動(dòng)畫將應(yīng)用該屬性值。//動(dòng)畫結(jié)束后,將保持最終結(jié)束的樣式。
backwards:動(dòng)畫將應(yīng)用在animation-delay定義期間啟動(dòng)動(dòng)畫的第一次迭代的關(guān)鍵幀中定義的屬性值。這些都是from關(guān)鍵幀中的值(當(dāng)animation-direction為“normal”或“alternate”時(shí))或to關(guān)鍵幀中的值
(當(dāng) animation-direction為“reverse”或“alternate-reverse”時(shí))。
both:動(dòng)畫遵循forwards和background的規(guī)則。也就是說,動(dòng)畫會(huì)在兩個(gè)地方上擴(kuò)展動(dòng)畫屬性。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
animation-play-state:指定動(dòng)畫是否正在運(yùn)行或已暫停。
animation-play-state: paused | running;
paused:指定暫停動(dòng)畫。
running:指定正在運(yùn)行的動(dòng)畫。
initial:設(shè)置屬性為其默認(rèn)值。
inherit:從父元素繼承屬性。
css3 transform屬性
transform屬性應(yīng)用于元素的2D或3D轉(zhuǎn)換。這個(gè)屬性允許你將元素旋轉(zhuǎn)、縮放、移動(dòng)、傾斜等。
transform:none | transform-functions;
none:定義不進(jìn)行轉(zhuǎn)換。
matrix(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n) 定義3D轉(zhuǎn)換,使用16個(gè)值的4*4矩陣。
translate(x,y) 定義2D轉(zhuǎn)換。
translate3d(x,y,z) 定義3D轉(zhuǎn)換。
translateX(x):定義轉(zhuǎn)換,只是用X軸的值。
translateY(y):定義轉(zhuǎn)換,只是用Y軸的值。
translateZ(z):定義3D轉(zhuǎn)換,只是用Z軸的值。
scale(x【,y】?)定義2D縮放轉(zhuǎn)換。
scale3d(x,y,z)定義3d縮放轉(zhuǎn)換。
scaleX(x)通過設(shè)置X軸的值來定義縮放轉(zhuǎn)換
………………………………還有很多
css calc()函數(shù)
calc()函數(shù)用于動(dòng)態(tài)計(jì)算長度值。
需要注意的是,運(yùn)算符前后都需要保留一個(gè)空格,例如:width:calc(100% - 10px);
任何長度值都可以使用calc()函數(shù)進(jìn)行計(jì)算。
calc()背景顏色徑向漸變
css3漸變 gradients
linear gradients 線性漸變:向上下左右,對(duì)角方向
radial gradients 徑向漸變:由它的中心定義
瀏覽器支持:-webkit-(谷歌、safari) -moz-(火狐) -o-(歐朋) 注:標(biāo)準(zhǔn)語法必須放在最后?。。。。。。。。。?/p>
background: linear-gradient(direction, color-stop1, color-stop2, ...);
//direction: top、left、right、bottom、
對(duì)角線:left top、bottom right、……
background: linear-gradient(angle, color-stop1, color-stop2);//使用角度
//angle :-180deg——0deg——180deg
多個(gè)顏色節(jié)點(diǎn):
background: -webkit-linear-gradient(red, green, blue); /* Safari 5.1 - 6.0 */ //默認(rèn)平均分布
background: -webkit-linear-gradient(red 10%, green 85%, blue 90%); //不均勻分布
使用透明度:
background: -webkit-linear-gradient(left, rgba(255,0,0,0), rgba(255,0,0,1)); /* Safari 5.1 - 6.0 */
重復(fù)的線性漸變:
background: -webkit-repeating-linear-gradient(red, yellow 10%, green 20%);
css3 徑向漸變
background: radial-gradient(center, shape size, start-color, ..., last-color);
//shape 參數(shù)定義了形狀。它可以是值 circle 或 ellipse。其中,circle 表示圓形,ellipse 表示橢圓形。默認(rèn)值是 ellipse。
//size 參數(shù)定義了漸變的大小。它可以是以下四個(gè)值:
closest-side
farthest-side
closest-corner
farthest-corner //默認(rèn)
重復(fù)徑向漸變
background:-webkit-repeating-radial-gradient(red, yellow10%, green15%);
css3新單位vw、vh、vmin、vmax的使用詳解
1vw vh vmin vmax的含義
都是相對(duì)于視窗大小來決定的,單位類似%
視窗viewport是你的瀏覽器實(shí)際顯示內(nèi)容的區(qū)域,換句話說是你的不包括工具欄和按鈕的網(wǎng)頁瀏覽器。
vw:視窗寬度的百分比(1vw代表視窗寬度的1%)
vh:視窗高度的百分比
vmin:當(dāng)前vw和vh中較小的一個(gè)
vmax:當(dāng)前vw和vh中較大的一個(gè)
2vw、vh與%百分比的區(qū)別
1、%是相對(duì)于父級(jí)元素的大小設(shè)定的比率,vw,vh是視窗大小決定的。
2、vw、vh優(yōu)勢(shì)在于能夠直接獲取高度,而使用%在沒有設(shè)置body的高度的情況下,是無法正確獲得可視區(qū)域的高度的,所以這是超級(jí)棒的。
3,vmin、vmax 用處
做移動(dòng)頁面開發(fā)時(shí),如果使用 vw、wh 設(shè)置字體大小(比如 5vw),在豎屏和橫屏狀態(tài)下顯示的字體大小是不一樣的。
由于 vmin 和 vmax 是當(dāng)前較小的 vw 和 vh 和當(dāng)前較大的 vw 和 vh。這里就可以用到 vmin 和 vmax。使得文字大小在橫豎屏下保持一致。
4,瀏覽器兼容性
(1)桌面 PC
Chrome:自 26 版起就完美支持(2013年2月)
Firefox:自 19 版起就完美支持(2013年1月)
Safari:自 6.1 版起就完美支持(2013年10月)
Opera:自 15 版起就完美支持(2013年7月)
IE:自 IE10 起(包括 Edge)到現(xiàn)在還只是部分支持(不支持 vmax,同時(shí) vm 代替 vmin)
(2)移動(dòng)設(shè)備
Android:自 4.4 版起就完美支持(2013年12月)
iOS:自 iOS8 版起就完美支持(2014年9月)
justify-content
justify-content用于設(shè)置或檢索彈性盒子元素在主軸(橫軸)方向上的對(duì)齊方式。
提示:使用align-content屬性對(duì)齊交叉軸上的各項(xiàng)(垂直)。
justify-content:flex-start | flex-end | center |space-between | space-around | inital | inherit;
屬性值:
flex-start:默認(rèn)值。項(xiàng)目位于容器的開頭。
flex-end:項(xiàng)目位于容器的結(jié)尾。
center:項(xiàng)目位于容器的中心。
space-between:項(xiàng)目位于各行之間留有空白的容器內(nèi)。
space-around:項(xiàng)目位于各行之前、之間、之后都留有空白的容器內(nèi)。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
align-items:
align-items:屬性定義flex子項(xiàng)在flex容器的當(dāng)前行的側(cè)軸(縱軸)方向上的對(duì)齊方式。
align-items:stretch | center | flex-start | flex-end | baseline | initial | inherit;
stretch : 默認(rèn)值。元素被拉伸以適應(yīng)容器。子元素會(huì)被拉伸到父元素的高度。
center:元素位于容器的中心。
flex-start:元素位于容器的開頭。
flex-end:元素位于容器的結(jié)尾。
baseline:元素位于容器的基線上。
如彈性盒子元素的行內(nèi)軸與側(cè)軸為同一條,則該值與"flex-start"等效。其它情況下,該值將與基線對(duì)齊。
css基線和行高:
CSS align-content 屬性
align-content屬性在彈性容器內(nèi)的各項(xiàng)沒有占用交叉軸上所有可用的空間時(shí)對(duì)齊容器內(nèi)的各項(xiàng)。
align-content:stretch | center | flex-start | flex-end | space-between | space-around | initial | inherit;
stretch: 默認(rèn)值。元素被拉伸以適應(yīng)容器。
各行將會(huì)伸展以占用剩余的空間。如果剩余的空間是負(fù)數(shù),該值等效于“flex-start”。在其它情況下,剩余空間被所有行平分,以擴(kuò)大它們的側(cè)軸尺寸。
center:元素位于容器的中心。
flex-start: 元素位于容器的開頭。
flex-end:元素位于容器的結(jié)尾。
space-between:元素位于各行之間留有空白的容器內(nèi)。
space-around:元素位于各行之前、之間、之后都留有空白的容器內(nèi)。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
css align-self屬性
align-self屬性定義flex子項(xiàng)單獨(dú)在側(cè)軸(縱軸)方向上的對(duì)齊方式。
注意:align-self屬性可重寫靈活容器的align-items屬性。
align-self:auto | stretch | center | flex-start | flex-end | baseline | initial | inherit;
auto: 默認(rèn)值。元素繼承了它的父容器的align-items屬性。如果沒有父容器則為“stretch”
stretch:元素被拉伸以適應(yīng)容器。
center:元素位于容器的中心。
flex-start:元素位于容器的開頭。
flex-end:元素位于容器的結(jié)尾。
baseline:元素位于容器的基線上。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
css animation 動(dòng)畫屬性
使用簡(jiǎn)寫屬性把a(bǔ)nimation綁定到一個(gè)
元素。
div{
animation:mymove 5s infinite;
-webkit-animation:mymove 5s infinite;
}
animation: name duration timing-function delay iteration-count direction fill-mode play-state;
animation-name:指定要綁定到選擇器的關(guān)鍵幀的名稱。
animation-duration:動(dòng)畫指定需要多少秒或毫秒完成。
animation-timing-function:設(shè)置動(dòng)畫將如何完成一個(gè)周期。
linear:動(dòng)畫從頭到尾的速度是相同的。
ease:默認(rèn)。動(dòng)畫以低速開始,然后加快,在結(jié)束前變慢。
ease-in:動(dòng)畫以低速開始。
ease-out:動(dòng)畫以低速結(jié)束。
ease-in-out:動(dòng)畫以低速開始和結(jié)束。
cubic-bezier(n,n,n,n):在cublic-bezier函數(shù)中自己的值??赡艿闹凳菑?到1的數(shù)值。貝茲曲線
animation-delay:設(shè)置動(dòng)畫在啟動(dòng)前的延遲間隔。 負(fù)值:-2s請(qǐng)注意動(dòng)畫將跳過2秒進(jìn)入動(dòng)畫周期。
animation-iteration-count :定義動(dòng)畫的播放次數(shù)。
n: 一個(gè)數(shù)字,定義應(yīng)該播放多少次動(dòng)畫。
infinite:指定動(dòng)畫應(yīng)該播放無限次(永遠(yuǎn));
animation-direction:指定是否應(yīng)該輪流反向播放動(dòng)畫。
normal:默認(rèn)值。動(dòng)畫按正常播放。
reverse:動(dòng)畫反向播放。
alternate:動(dòng)畫在奇數(shù)次(1、3、5……)正向播放,在偶數(shù)次(2、4、6、……)反向播放。
alternate-reverse:動(dòng)畫在奇數(shù)次(1、3、5……)反向播放,在偶數(shù)次(2、4、6……)正向播放。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
animation-fill-mode:規(guī)定當(dāng)動(dòng)畫不播放時(shí)(當(dāng)動(dòng)畫完成時(shí),或當(dāng)動(dòng)畫有一個(gè)延遲未開始播放時(shí)),要應(yīng)用到元素的樣式。
none:默認(rèn)值。動(dòng)畫在動(dòng)畫執(zhí)行之前和之后不會(huì)應(yīng)用任何樣式到目標(biāo)元素。
forwards:在動(dòng)畫結(jié)束后(由animation-iteration-count決定),動(dòng)畫將應(yīng)用該屬性值。//動(dòng)畫結(jié)束后,將保持最終結(jié)束的樣式。
backwards:動(dòng)畫將應(yīng)用在animation-delay定義期間啟動(dòng)動(dòng)畫的第一次迭代的關(guān)鍵幀中定義的屬性值。這些都是from關(guān)鍵幀中的值(當(dāng)animation-direction為“normal”或“alternate”時(shí))或to關(guān)鍵幀中的值
(當(dāng) animation-direction為“reverse”或“alternate-reverse”時(shí))。
both:動(dòng)畫遵循forwards和background的規(guī)則。也就是說,動(dòng)畫會(huì)在兩個(gè)地方上擴(kuò)展動(dòng)畫屬性。
initial:設(shè)置該屬性為它的默認(rèn)值。
inherit:從父元素繼承該屬性。
animation-play-state:指定動(dòng)畫是否正在運(yùn)行或已暫停。
animation-play-state: paused | running;
paused:指定暫停動(dòng)畫。
running:指定正在運(yùn)行的動(dòng)畫。
initial:設(shè)置屬性為其默認(rèn)值。
inherit:從父元素繼承屬性。
css3 transform屬性
transform屬性應(yīng)用于元素的2D或3D轉(zhuǎn)換。這個(gè)屬性允許你將元素旋轉(zhuǎn)、縮放、移動(dòng)、傾斜等。
transform:none | transform-functions;
none:定義不進(jìn)行轉(zhuǎn)換。
matrix(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n) 定義3D轉(zhuǎn)換,使用16個(gè)值的4*4矩陣。
translate(x,y) 定義2D轉(zhuǎn)換。
translate3d(x,y,z) 定義3D轉(zhuǎn)換。
translateX(x):定義轉(zhuǎn)換,只是用X軸的值。
translateY(y):定義轉(zhuǎn)換,只是用Y軸的值。
translateZ(z):定義3D轉(zhuǎn)換,只是用Z軸的值。
scale(x【,y】?)定義2D縮放轉(zhuǎn)換。
scale3d(x,y,z)定義3d縮放轉(zhuǎn)換。
scaleX(x)通過設(shè)置X軸的值來定義縮放轉(zhuǎn)換
………………………………還有很多
css calc()函數(shù)
calc()函數(shù)用于動(dòng)態(tài)計(jì)算長度值。
需要注意的是,運(yùn)算符前后都需要保留一個(gè)空格,例如:width:calc(100% - 10px);
任何長度值都可以使用calc()函數(shù)進(jìn)行計(jì)算。
calc()函數(shù)支持+、-、*、/運(yùn)算。
calc()函數(shù)使用標(biāo)準(zhǔn)的數(shù)字運(yùn)算優(yōu)先級(jí)規(guī)則。
calc(expression)expression必須,一個(gè)數(shù)字表達(dá)式,結(jié)果將采用運(yùn)算后的返回值。函數(shù)支持+、-、*、/運(yùn)算。
calc()函數(shù)使用標(biāo)準(zhǔn)的數(shù)字運(yùn)算優(yōu)先級(jí)規(guī)則。
calc(expression)expression必須,一個(gè)數(shù)字表達(dá)式,結(jié)果將采用運(yùn)算后的返回值。
微信滿屏流星雨的代碼是“miss u”、“想你了”和“miss you”。
工具:小米11青春版手機(jī)、MIUI 12.5.5操作系統(tǒng)、微信APP V8.0.19。
1、在好友聊天窗口的輸入框中輸入“miss u”。
2、點(diǎn)擊發(fā)送,滿屏流星出現(xiàn)。
3、在好友聊天窗口的輸入框中輸入“想你了”。
4、點(diǎn)擊發(fā)送,滿屏流星出現(xiàn)。
5、在好友聊天窗口的輸入框中輸入“miss you”。
6、點(diǎn)擊發(fā)送,滿屏流星出現(xiàn)。
htmlstyle type="text/css"
!--
body {
background-color: #000000;
}
--
/style
Body
script language="JavaScript"
!--
if (document.all){
Cols=60;
Cl=20;//Space's are included so real length is 48!
Cs=20;
Ts=20;
Tc='#008800';
Tc1='#00ff00';
MnS=20;
MxS=30;
I=Cs;
Sp=new Array();S=new Array();Y=new Array();
C=new Array();M=new Array();B=new Array();
RC=new Array();E=new Array();Tcc=new Array(0,1);
document.write(" div id='Container' style='position:absolute;top:0;left:-"+Cs+"'");
document.write(" div style='position:relative'");
for(i=0; i Cols; i++){
S[i]=I+=Cs;
document.write(" div id='A' style='position:absolute;top:0;font-family:Arial;font-size:"
+Ts+"px;left:"+S[i]+";width:"+Ts+"px;height:0px;color:"+Tc+";visibility:hidden' /div");
}
document.write(" /div /div");
for(j=0; j Cols; j++){
RC[j]=1+Math.round(Math.random()*Cl);
Y[j]=0;
Sp[j]=Math.round(MnS+Math.random()*MxS);
for(i=0; i RC[j]; i++){
B[i]='';
C[i]=Math.round(Math.random()*1)+' ';
M[j]=B[0]+=C[i];
}
}
function Cycle(){
Container.style.top=window.document.body.scrollTop;
for (i=0; i Cols; i++){
var r = Math.floor(Math.random()*Tcc.length);
E[i] = ' font color='+Tc1+''+Tcc[r]+' /font';
Y[i]+=Sp[i];
if (Y[i] window.document.body.clientHeight){
for(i2=0; i2 Cols; i2++){
RC[i2]=1+Math.round(Math.random()*Cl);
for(i3=0; i3 RC[i2]; i3++){
B[i3]='';
C[i3]=Math.round(Math.random()*1)+' ';
C[Math.floor(Math.random()*i2)]=' '+' ';
M[i]=B[0]+=C[i3];
Y[i]=-Ts*M[i].length/1.5;
A[i].style.visibility='visible';
}
Sp[i]=Math.round(MnS+Math.random()*MxS);
}
}
A[i].style.top=Y[i];
A[i].innerHTML=M[i]+' '+E[i]+' ';
}
setTimeout('Cycle()',20)
}
Cycle();
}
// --
/script
/body
/html
演示地址:
網(wǎng)上找的代碼,我給你改了下
數(shù)字流星雨代碼:
//流星雨.cpp:Defines the entry point for the console application.
//
///////////////////////////////////////////////////
//程序名稱:數(shù)字流星雨
//最后修改:2006-10-15
///////////////////////////////////////////////////
#includelt;windows.hgt;
#includelt;time.hgt;
#includelt;stdlib.hgt;
#include"graphics.h"
#includelt;conio.hgt;
#includelt;math.hgt;
/***********************宏定義**********************/
#define PI 3.1415926//圓周率
#define WIDTH 200//屏幕寬度,流星出生區(qū)域
#define HEIGHT 150//屏幕高度,流星出生區(qū)域
#define V 20//流星速度,單次移動(dòng)的像素?cái)?shù)
#define LENGTH 20//流星字符數(shù)
#define DELAY 30//延時(shí)
#define NUM 45//流星個(gè)數(shù)
/******************定義流星結(jié)構(gòu)體*******************/
struct meteor
{
int x0;
int y0;
int yh;
char str[LENGTH];
}me[NUM]={0};
/*********************函數(shù)聲明**********************/
char AsciiRand();
void Move(char*p);
void InitMeteor(struct meteor*me);
int color(int y,int y0,int yh);
void Meteors(struct meteor me[]);
/***********************主函數(shù)**********************/
///int main(void)
int _tmain(int argc,_TCHAR*argv[]){
char c='\0';//接收鍵盤輸入的變量
initgraph(WIDTH,HEIGHT);//初始化WIDTH*HEIGHT的繪圖窗口
HWND hwnd=GetHWnd();//獲得窗口句柄
SetWindowText(hwnd,"Gavin Liu數(shù)字流星雨");//修改窗口名稱
ShowWindow(hwnd,SW_SHOWMAXIMIZED);//最大化顯示窗口
MessageBox(hwnd,TEXT("點(diǎn)擊【確定】開始演示流星雨效果,Esc鍵退出"),TEXT("提示"),MB_OK|MB_ICONWARNING);//彈出提示
srand((unsigned)time(NULL));//設(shè)置隨機(jī)種子
for(int i=0;ilt;NUM;i++){//對(duì)NUM個(gè)流星體初始化
InitMeteor(melt;igt;);
}
while(c!=27){
BeginBatchDraw();//開始批量繪圖
Meteors(me);//繪制一幀動(dòng)畫
FlushBatchDraw();//執(zhí)行未完成的繪制任務(wù)
Sleep(DELAY);//延時(shí)
cleardevice();//清屏
for(int i=0;ilt;NUM;i++){
melt;igt;.yh+=V;
Move(melt;igt;.str);
if(melt;igt;.yhgt;HEIGHT+LENGTH*V){
InitMeteor(melt;igt;);
}
}
if(kbhit()){
c=getch();
}
}
EndBatchDraw();//結(jié)束批量繪圖
closegraph();//結(jié)束繪圖環(huán)境
return 0;
}
/***********************函數(shù)體**********************/
char AsciiRand(){//產(chǎn)生隨機(jī)可見ASCII碼
return((char)(rand()%(126-33)+33));
}
void Move(char*p){//字符后移,可以使顯示時(shí)字符相對(duì)屏幕位置不變
char*pt=p+LENGTH;
while(ptgt;p){
*(--pt)=*(pt-1);
}
*p=AsciiRand();
}
void InitMeteor(struct meteor*me){//對(duì)一顆流星初始化
me-gt;x0=rand()%WIDTH;
me-gt;yh=me-gt;y0=rand()%HEIGHT;
for(int i=0;ilt;LENGTH;i++)
{
*(me-gt;str+i)=AsciiRand();
}
}
int color(int y,int y0,int yh){//確定流星的顏色
int color;
//出生點(diǎn)之前的流星體置成黑色
if(ylt;y0){
color=0;
}
//流星顏色自頭至尾按照余弦函數(shù)遞減
else{
//尾跡消失
color=(int)(255*cos((yh-y)*PI/(2*LENGTH*V)));
}
return color;
}
//打印一幀流星的畫面
void Meteors(struct meteor me[]){
//設(shè)置格式:背景透明,字符高度,字體粗細(xì),字體
setbkmode(TRANSPARENT);
setfont(12,12,"宋體");
//開始打印一幀圖像
int y;
for(int n=0;nlt;NUM;n++){
for(int j=0;jlt;LENGTH;j++){
//流星中第j個(gè)字符的縱坐標(biāo)
y=me[n].yh-j*V;
//設(shè)置顏色,流星的頭部是白色的
setcolor(RGB(255*(0==j),color(y,me[n].y0,me[n].yh),255*(0==j)));
//打印字符
outtextxy(me[n].x0,y,me[n].str[j]);
}
}
}
擴(kuò)展資料:
include用法:
#include命令預(yù)處理命令的一種,預(yù)處理命令可以將別的源代碼內(nèi)容插入到所指定的位置;可以標(biāo)識(shí)出只有在特定條件下才會(huì)被編譯的某一段程序代碼;可以定義類似標(biāo)識(shí)符功能的宏,在編譯時(shí),預(yù)處理器會(huì)用別的文本取代該宏。
插入頭文件的內(nèi)容
#include命令告訴預(yù)處理器將指定頭文件的內(nèi)容插入到預(yù)處理器命令的相應(yīng)位置。有兩種方式可以指定插入頭文件:
1、#includelt;文件名gt;
2、#include"文件名"