亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > CSS > 正文

CSS學習筆記之常用Mixin封裝實例代碼

2024-07-11 09:07:58
字體:
來源:轉載
供稿:網友

前言

為了有效的維護和開發項目,代碼的重復利用就顯得尤為重要。在Sass中,除了@import和@extend可以使你的代碼更加具有重復利用性,@mixin指令也同樣能提高你代碼的重復使用率并簡化你的代碼。個人在做項目的過程中總結歸納的一些常用Mixin,現在分享出來供大家學習。

基于Less編寫。但是CSS預處理器都是相通的,你可以很輕易的修改成Sass、Stylus

代碼免不了錯誤和Bug,如果你能幫我修改或者補充 萬分感謝??!

參考了一些開源庫,如:est、csslab等

Usage

/*** 作品:mixin.less* 更新:2017年12月14日* 簡介:1. 一個基于 Less 的樣式工具庫,封裝了常用 mixin,幫助您更輕松地書寫 Less 代碼。*       2. 只在調用時才輸出代碼,減少代碼冗余,避免樣式污染*       3. 不自帶兼容前綴,減少代碼量,而建議采用工具生成,如 postcss、Autoprefixer、less-plugin-autoprefix 等*       4. 附帶 IE 各類 Hack*//*-------------------------------------├   布局                              ┆└------------------------------------*/// 盒子寬高.size(@w, @h) { width: @w; height: @h; }// 最小尺寸, 兼容IE6.min-width(@min-w) { min-width: @min-w; _width: @min-w; }.min-height(@min-h) { min-height: @min-h; _height: @min-h; }// 內聯塊級元素, 兼容IE6.dib() { display: inline-block; *display: inline; *zoom: 1; }// 固定定位, 兼容IE6.fixed() { position: fixed; _position: absolute; *zoom: 1; }// 統一盒模型.border-box() {  *, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }}// 文字圖片居中.center(text-x) { text-align: center; }.center(text-y) { display: table-cell; vertical-align: middle; }// 塊級元素水平居中.center(auto-x) { display: block; margin-left: auto; margin-right: auto; }// 居中, 不確定尺寸, 不兼容 IE6.center(unknown) { position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; }.center(unknown-x) { position: absolute; left: 0; right: 0; margin-left: auto; margin-right: auto; }.center(unknown-y) { position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; }// 居中, 確定尺寸, 兼容 IE6.center(known, @w, @h) {  .size(@w, @h);  position: absolute; top: 50%; left: 50%; margin-top: -(@w / 2); margin-left: -(@h / 2);}.center(known-x, @w) {  width: @w;  position: absolute; left: 50%; margin-left: -(@h / 2);}.center(known-y, @h) {  height: @h;  position: absolute; top: 50%; margin-top: -(@w / 2);}// 居中, CSS3 平移方式, 兼容性不行.center(translate) { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }// 居中, Flex 方式, 兼容性不行.center(flex) { display: flex; align-items: center; justify-content: center; }// 多個子項布局.list(float, @w: 25%) { float: left; width: @w; }.list(inline, @w: 25%) { .dib(); width: @w; }.list(flex) { flex: 1; }// 遮罩層, 全屏遮罩、區域遮罩.over-screen(fixed) { .fixed(); top: 0; left: 0; right: 0; bottom: 0; }.over-screen(absolute) { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }// 容器寬高比固定// 100* 1/1 = 100%// 100* 3/4 = 75%.fixed-ratio(@padding-top: 100%) {  position: relative; width: 100%; height: 0; padding-top: @padding-top;  img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }}// 擴展點擊區域.extend-click() {  position: relative;  &:before { content: ''; position: absolute; top: -10px; left: -10px; right: -10px; bottom: -10px; }}// 定寬居中頁面布局.layout-page(@width: 1200px) { width: @width; margin-left: auto; margin-right: auto; }// 側邊欄// 主要區域:overflow: hidden; margin-left: xx; margin-right: xx;.sidebar(left, @width) { position: absolute; top: 0; left: 0; width: @width; }.sidebar(right, @width) { position: absolute; top: 0; right: 0; width: @width; }/*-------------------------------------├   字體                              ┆└------------------------------------*/// 字體大小.fz(@fz) { font-size: @fz; }// 字體大小與行高.fz(@fz, @lh) { font-size: @fz; line-height: @lh; }// 字體大小、行高、高度.fz(@fz, @h, @lh: @h) { font-size: @fz; height: @h; line-height: @lh; }// 行高與高度.lh(@h, @lh: @h) { height: @h; line-height: @lh; }// 字體顏色, 包括鏈接與非鏈接.color(@color) { color: @color;}// 字體顏色 + 自身 Hover.color(@color, @hovercolor) {  color: @color;  &:hover { color: @hovercolor; }}// 字體顏色 + 鏈接 Hover.color(@color, @acolor, @hovercolor) {  color: @color;  a {    color: @acolor;    &:hover { color: @hovercolor; }  }}// 正常字體樣式.normal-font() { font-weight: normal; font-style: normal; }// 輔助性文字(灰色).assist-font(@color: #b0b0b0, @fz: 14px) { color: @color; font-size: @fz; }// 禁止換行, 文本溢出省略號顯示 (一行).ellipsis() {  white-space: normal; word-wrap: break-word; word-break: break-all;  -o-text-overflow: ellipsis; -ms-text-overflow: ellipsis; text-overflow:ellipsis; overflow:hidden;}// 文本溢出省略號顯示 (多行)// 只支持 webkit 瀏覽器, 解決方案:高度 = 行高*行數// height: 90px; line-height: 30px; -webkit-line-clamp: 3;.ellipsis-mult(@n: 3) {  display: -webkit-box; -webkit-box-orient: vertical;-webkit-line-clamp: @n; word-break: break-all;  -o-text-overflow: ellipsis; -ms-text-overflow: ellipsis; text-overflow:ellipsis; overflow: hidden;}// 書寫模式:牌匾從右至左水平單行排版效果、文箋從右至左、從上至下排版效果.retext(x) { direction: rtl; unicode-bidi: bidi-override; }.retext(y) { writing-mode: tb-rl; writing-mode: vertical-rl; }// 文字透明.transparent-text() { font: 0/0 serif; text-shadow: none; color: transparent; }// 文字隱藏(常用于SEO優化)// <a href=""  圖像                              ┆└------------------------------------*/// 用 max-width 來防止圖片撐破容器.max-img() { display: block; max-width: 100%; height: auto; }// 2x 3x 背景圖片.bg-image(@url) {  background-image: url("@url + '@2x.png'");  @media (-webkit-min-device-pixel-ratio: 3), (min-device-pixel-ratio: 3) {    background-image: url("@url + '@3x.png'");  }}// 全屏大圖背景.fullscreen-bg(@url) {  width: 100vw;  height: 100vh;  background: url(@url) no-repeat 50% 50%;  background-size: cover;}// 濾鏡: 將彩色照片顯示為黑白照片.grayscale() {  filter: grayscale(100%);  -webkit-filter: grayscale(100%);  -moz-filter: grayscale(100%);  -ms-filter: grayscale(100%);  -o-filter: grayscale(100%);}/*-------------------------------------├   動效                              ┆└------------------------------------*/// 鏈接默認無下劃線,hover后有下劃線的樣式.hover-link() {  text-decoration: none;  &:hover { text-decoration: underline; }}// 將鏈接變成默認的文字樣式.unstyled-link() {  color: inherit;  cursor: inherit;  text-decoration: inherit;  &:active, &:focus { outline: none; }}// 盒子陰影// box-shadow: 水平陰影的位置, 垂直陰影的位置, 模糊距離, 陰影的大小, 陰影的顏色, 陰影開始方向(默認是從里往外,設置inset就是從外往里);// box-shadow: h-shadow v-shadow blur spread color inset;.box-shadow() {  box-shadow: 0px 14px 26px 0px rgba(0, 0, 0, 0.1);}// 盒子 Hover.box-hover() {  // box-shadow: 0px 1px 2px 0px rgba(84, 107, 107, .4);  transition: all .2s linear;  &:hover {    box-shadow: 0 15px 30px rgba(0, 0, 0, .1);    transform: translate3d(0, -2px, 0);  }}.box-hover2() {  transition: transform .5s ease;  &:hover {    transform: translateX(10px);  }}// 三維閃動 bug 處理.transform-fix() { -webkit-backface-visibility: hidden; -webkit-transform-style: preserve-3d; }// Animation.ani(@name, @time: 1s, @ease: ease-in-out, @fillmode: forwards) {  animation-name: @name;  animation-duration: @time;  animation-timing-function: @ease;  animation-fill-mode: @fillmode;}/*-------------------------------------├   功能                              ┆└------------------------------------*/// 浮動, 兼容 IE6.fl() { float: left; *display: inline; _display:inline; }.fr() { float: right; *display: inline; _display:inline; }// 清除浮動.clearfix() {  *zoom: 1;  &:after { display: block; clear: both; content: ''; visibility: hidden; height: 0; }}.clearfix(table) {  *zoom: 1;  &:before, &:after { content: " "; display: table; clear: both; }}// 禁止文本被選擇.user-select() { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }// 隱藏鼠標手勢.hide-cursor() { cursor: none !important; }// 鼠標禁用樣式,但仍然可以觸發事件// <input type="text" disabled="disabled">.disabled() { cursor: not-allowed; }// 禁用元素事件// 1. 阻止任何點擊動作的執行// 2. 使鏈接顯示為默認光標(cursor:default)// 3. 阻止觸發hover和active狀態// 4. 阻止JavaScript點擊事件的觸發.pointer-events() { pointer-events: none; }// 模糊.blur(@blur: 10px) {  filter: blur(@blur);  -webkit-filter: blur(@blur);  -moz-filter: blur(@blur);  -o-filter: blur(@blur);  -ms-filter: blur(@blur);  filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='@{blur}');  *zoom: 1;}// 透明度, 兼容 IE8.opacity(@opacity: 20) { opacity: @opacity / 100; filter: alpha(opacity=@opacity); }// 用偽類來顯示打印時 a 標簽的鏈接.print-link() {  @media print {    a[href]:after { content: " (" attr(href) ") "; }  }}// 隔行換色.zebra-lists(odd, @color) {  &.odd {    >li:nth-child(odd) { background-color: @color; }  }}.zebra-lists(even, @color) {  &.even {    >li:nth-child(even) { background: green; }  }}// 首字下沉.first-letter(@font-size: 6em) {  &::first-letter{    float: left;    line-height: 1;    font-size: @font-size;  }}// 特殊標記段落第一行.first-line() {  &::first-line{    color: red  }}// 美化選中文本.beauty-select() {  &::selection{   color: #fff;   background-color: #6bc30d;   text-shadow: none;  }}// 美化占位符 placeholder 樣式.beauty-placeholder(@fz, @color: #999, @align: left) {  &:-moz-placeholder { font-size: @fz; color: @color; text-align: @align; }  &:-ms-input-placeholder { font-size: @fz; color: @color; text-align: @align; }  &::-webkit-input-placeholder { font-size: @fz; color: @color; text-align: @align; }}// 美化占位符 placeholder 樣式(自定義屬性和值).beauty-placeholder(custom, @property, @value) {  &:-moz-placeholder { @{property}: @value; }  &:-ms-input-placeholder { @{property}: @value; }  &::-webkit-input-placeholder { @{property}: @value; }}/*-------------------------------------├   圖形                              ┆└------------------------------------*/// 三角形.triangle(@width: 4px,@color: #000) {  display: inline-block;  width: 0;  height: 0;  vertical-align: middle;  border-top: @width solid @color;  border-left: @width solid transparent;  border-right: @width solid transparent;}// 三角形箭頭氣泡效果, IE6-7 無表現.arrow(top, @w: 10px, @color, @x: 50%) {  position: relative;  &:before { position: absolute; bottom: 100%; left: @x; content: " "; height: 0; width: 0; pointer-events: none; border-style: solid; border-color: transparent; border-bottom-color: @color; border-width: unit(@w, px); @margin: -@w; margin-left: unit(@margin, px); }}.arrow(right, @w: 10px, @color, @y: 50%) {  position: relative;  &:before { position: absolute; left: 100%; top: @y; content: " "; height: 0; width: 0; pointer-events: none; border-style: solid; border-color: transparent; border-left-color: @color; border-width: unit(@w, px); @margin: -@w; margin-top: unit(@margin, px); }}.arrow(bottom, @w: 10px, @color, @x: 50%) {  position: relative;  &:before { position: absolute; top: 100%; left: @x; content: " "; height: 0; width: 0; pointer-events: none; border-style: solid; border-color: transparent; border-top-color: @color; border-width: unit(@w, px); @margin: -@w; margin-left: unit(@margin, px); }}.arrow(left, @w: 10px, @color, @y: 50%) {  position: relative;  &:before { position: absolute; right: 100%; top: @y; content: " "; height: 0; width: 0; pointer-events: none; border-style: solid; border-color: transparent; border-right-color: @color; border-width: unit(@w, px); @margin: -@w; margin-top: unit(@margin, px); }}// 三角形箭頭氣泡效果, 帶邊框.arrow-with-border(top, @w: 10px, @color, @border-w: 1px, @border-color, @x: 50%) {  position: relative;  &:before, &:after { bottom: 100%; left: @x; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; border-style: solid; border-color: transparent; }  &:after { border-bottom-color: @color; border-width: unit(@w, px); @margin: -@w; margin-left: unit(@margin, px); }  &:before { border-bottom-color: @border-color; @arrbo: @w+@border-w; border-width: unit(@arrbo, px); @margin-bo: -@arrbo; margin-left: unit(@margin-bo, px); }}.arrow-with-border(bottom, @w: 10px, @color, @border-w: 1px, @border-color, @x: 50%) {  position: relative;  &:before, &:after { top: 100%; left: @x; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; border-style: solid; border-color: transparent; }  &:after { border-top-color: @color; border-width: unit(@w, px); @margin: -@w; margin-left: unit(@margin, px); }  &:before { border-top-color: @border-color; @arrbo: @w+@border-w; border-width: unit(@arrbo, px); @margin-bo: -@arrbo; margin-left: unit(@margin-bo, px); }}.arrow-with-border(left, @w: 10px, @color, @border-w: 1px, @border-color, @y: 50%) {  position: relative;  &:before, &:after { top: @y; right: 100%; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; border-style: solid; border-color: transparent; }  &:after { border-right-color: @color; border-width: unit(@w, px); @margin: -@w; margin-top: unit(@margin, px); }  &:before { border-right-color: @border-color; @arrbo: @w+@border-w; border-width: unit(@arrbo, px); @margin-bo: -@arrbo; margin-top: unit(@margin-bo, px); }}.arrow-with-border(right, @w: 10px, @color, @border-w: 1px, @border-color, @y: 50%) {  position: relative;  &:before, &:after { top: @y; left: 100%; content: " "; height: 0; width: 0; position: absolute; pointer-events: none; border-style: solid; border-color: transparent; }  &:after { border-left-color: @color; border-width: unit(@w, px); @margin: -@w; margin-top: unit(@margin, px); }  &:before { border-left-color: @border-color; @arrbo: @w+@border-w; border-width: unit(@arrbo, px); @margin-bo: -@arrbo; margin-top: unit(@margin-bo, px); }}/*-------------------------------------├   組件                              ┆└------------------------------------*/// 吸頂導航.fix-header(@h: 70px) {  .fixed();  top: 0;  left: 0;  width: 100%;  height: @h;  z-index: 1000;  // background-color: rgba(256, 256, 256, .92);  // border-bottom: 1px solid rgba(7, 17, 27, 0.1);  // box-shadow: 0px 0px 20px rgba(0,0,0,0.2);}// 吸底導航.fix-header(@h: 70px) {  .fixed();  left: 0;  bottom: 0;  width: 100%;  height: @h;  z-index: 1000;}// 輸入框.input-text() {  display: block;  width: 100%;  padding: 4px 8px;  font-size: 14px;  line-height: 1.42858;  color: #333;  border: 1px solid #ddd;  background-color: #fff;  border-radius: 3px;}// 分割線// <span class="separator">|/-</span>.separator() {  margin: 0 10px;  color: #999;  font-size: 14px;}// 分割線 / (面包屑導航).separator2() {  &:before {    padding: 0 5px;    color: #ccc;    content: "//00a0";  }}// <hr class="hr">// 支付寶:我也是有底線的.hr() {  height: 1px;  margin: 10px 0;  border: 0;  clear: both;  background-color: #e2e2e2;}// 改裝的 fieldset// <fieldset><legend>返璞歸真</legend></fieldset>.fieldset() {  border-color: #d2d2d2;  border-width: 1px 0 0;  border-style: solid;  legend {    padding: 0 20px;    text-align: center;    font-size: 20px;    font-weight: 300;  }}// 引用區塊(模仿 Layui)// <div class="blockquote">Lorem ipsum dolor sit amet.</div>.blockquote() {  margin-bottom: 10px;  padding: 15px;  line-height: 22px;  border-left: 5px solid #009688;  border-radius: 0 2px 2px 0;  background-color: #f2f2f2;}// 徽章 (橢圓、小圓點)// <span class="badge">10</span>.badge(...) {  position: relative;  display: inline-block;  font-size: 12px;  color: #fff;  background-color: #FF5722;}.badge(ellipse) {  min-width: 8px;  height: 18px;  padding: 2px 6px;  text-align: center;  line-height: 18px;  border-radius: 9px;}.badge(dot) {  width: 8px;  height: 8px;  border-radius: 50%;}// 關閉按鈕// <button class="close" type="button"><span>&times;</span></button>.close() {  position: relative;  -webkit-appearance: none;  padding: 0;  cursor: pointer;  background: 0 0;  border: 0;  font-size: 20px;  font-weight: 700;  line-height: 1;  color: #000;  text-shadow: 0 1px 0 #fff;  filter: alpha(opacity=20);  opacity: .2;  &:hover {    color: #000;    text-decoration: none;    cursor: pointer;    filter: alpha(opacity=50);    opacity: .5;  }  &:before {    content: '';    position: absolute;    top: -10px;    left: -10px;    right: -10px;    bottom: -10px;  }}// 1 像素邊框問題.onepx(...) {  position: relative;  &:after {    content: '';    display: block;    position: absolute;    left: 0;    width: 100%;    border-top: 1px solid rgba(7, 17, 27, 0.1);    transform: scaleY(0.5);  }}.onepx(top) { &:after { top: 0; } }.onepx(bottom) { &:after { bottom: 0; } }.onepx-easy(top, @color: #ccc) { box-shadow: inset 0px -1px 1px -1px @color; }.onepx-easy(bottom, @color: #ccc) { box-shadow: inset 0px 1px 1px -1px @color; }

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到CSS教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩极品精品视频免费观看| 欧美国产精品va在线观看| 国模精品视频一区二区三区| 欧美日韩国产第一页| 欧美日韩黄色大片| 日本中文字幕不卡免费| 欧美在线性爱视频| 国产一区av在线| 亚洲欧洲在线观看| 在线丨暗呦小u女国产精品| 欧美激情精品久久久久久久变态| 国产精品久久二区| 欧美在线性爱视频| 在线播放国产一区中文字幕剧情欧美| 91精品国产高清久久久久久| 草民午夜欧美限制a级福利片| 亚洲国产精品久久久久秋霞不卡| 91精品久久久久久久| 成人h视频在线| 不卡毛片在线看| 国产激情视频一区| 日本亚洲欧洲色| 欧美巨乳美女视频| 亚洲视频专区在线| 国产成人一区二区三区电影| 欧美激情国内偷拍| 欧美性猛交xxxx免费看久久久| 午夜精品久久久久久99热软件| 伦伦影院午夜日韩欧美限制| 久久久国产视频91| 亚洲日韩第一页| 狠狠色狠狠色综合日日五| 欧美精品久久久久| 大荫蒂欧美视频另类xxxx| 精品久久久久国产| 欧美日韩在线另类| 精品久久久久久久大神国产| 91精品视频免费观看| 亚洲电影在线看| 中文字幕亚洲欧美一区二区三区| 久久久日本电影| 日本a级片电影一区二区| 国产精品福利久久久| 亚洲国产精品人人爽夜夜爽| 中文字幕日本欧美| 欧美激情精品久久久久久大尺度| 日韩亚洲国产中文字幕| 97av在线视频免费播放| 欧美成人三级视频网站| 日韩精品视频在线免费观看| 欧美一区二区三区……| 精品国产乱码久久久久酒店| 亚洲一区二区三区777| 日韩精品www| 国产精品美女视频网站| 2019中文字幕在线| 黄网动漫久久久| 色综合亚洲精品激情狠狠| 日韩动漫免费观看电视剧高清| 久久久国产影院| 在线播放日韩专区| 国产极品精品在线观看| 国产欧美日韩综合精品| 亚洲va欧美va在线观看| 日韩欧美国产高清91| 午夜伦理精品一区| 精品久久久久久久久中文字幕| 国产成人精品视频在线观看| 日韩在线观看高清| 综合激情国产一区| 精品久久久久久亚洲国产300| 日韩av影片在线观看| 亚洲欧美国产一区二区三区| 欧美一级淫片丝袜脚交| 欧美大片免费观看在线观看网站推荐| 国产热re99久久6国产精品| 亚洲qvod图片区电影| 欧美性xxxxxx| 亚洲片国产一区一级在线观看| 精品一区二区三区四区在线| 国产在线98福利播放视频| 日韩女在线观看| 日韩欧美中文字幕在线播放| 国产在线a不卡| 中文字幕一区日韩电影| 国产午夜精品全部视频播放| 成人乱色短篇合集| 91精品国产色综合| 亚洲人免费视频| 欧美亚洲一级片| 国产日韩欧美夫妻视频在线观看| 国产精品电影久久久久电影网| 2018中文字幕一区二区三区| 91在线网站视频| 欧美激情乱人伦一区| www.国产精品一二区| 在线观看精品国产视频| 欧美日韩亚洲一区二| 国产欧美一区二区| 亚洲精品福利在线| 伦理中文字幕亚洲| 欧美色视频日本版| 中文字幕亚洲一区二区三区五十路| 国产精品成av人在线视午夜片| 亚洲国产91色在线| 91免费看片在线| 国产免费一区二区三区在线能观看| 国产免费亚洲高清| 亚洲男人av在线| 亚洲国产成人av在线| 精品无人区太爽高潮在线播放| 欧美午夜性色大片在线观看| 亚洲自拍欧美色图| 日韩视频免费大全中文字幕| 国产精品美女视频网站| 欧美区在线播放| 国产精品一区二区女厕厕| 日韩精品免费在线视频观看| 欧美国产在线电影| 精品久久久在线观看| 91色p视频在线| 欧美性xxxxhd| 久久91超碰青草是什么| 77777少妇光屁股久久一区| 欧美高清不卡在线| 久久av在线看| 国产精品久久久久久久久久小说| 成人黄色av网| 伊人久久久久久久久久久久久| 在线观看国产精品淫| 亚洲偷欧美偷国内偷| 日韩高清av一区二区三区| 在线电影欧美日韩一区二区私密| 国产综合色香蕉精品| 成人情趣片在线观看免费| 91国内免费在线视频| 日韩av在线最新| 日韩国产精品视频| 日韩精品视频在线观看免费| 欧美激情一区二区三区在线视频观看| 亚洲一品av免费观看| 97视频在线观看成人| 一本一本久久a久久精品牛牛影视| 精品中文字幕久久久久久| 欧美激情图片区| 国产精品久久久久久久app| 国产精品福利小视频| 亚洲а∨天堂久久精品9966| 久久午夜a级毛片| 久久在精品线影院精品国产| 色老头一区二区三区| 久久视频精品在线| 中文欧美在线视频| 欧美—级a级欧美特级ar全黄| 久久成人精品一区二区三区| 久久久久久美女| 久久乐国产精品| 亚洲视频在线免费看| 日本sm极度另类视频| 日韩亚洲第一页| 九色91av视频| 久久久久久亚洲精品不卡| 国产一区二区三区毛片| 亚洲女成人图区|