亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

定制滾動條,在拇指周圍具有靈活、可擴展的軌道,就像引力透鏡一樣

定制滾動條,在拇指周圍具有靈活、可擴展的軌道,就像引力透鏡一樣

慕虎7371278 2023-12-19 21:18:25
我想實現一個帶有靈活軌道的自定義滾動條,該軌道可以使用 CSS 圍繞拇指展開。我嘗試實現類似引力透鏡效果的效果,就好像拇指(紅點)扭曲了它周圍的空間(見下圖)。重力透鏡應隨拇指移動。我怎樣才能做到這一點?
查看完整描述

1 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

首先:可以僅使用 HTML 和 CSS 構建滾動條,但需要使用 Javascript。


簡單的滾動條

您可以使用 position、border 和 border-radius 實現此外觀。軌道獲取左側和右側的邊框,拇指通過 border-radius: 50% 獲取所有側面的邊框,另外還有一個白色遮罩(軌道的寬度減去其邊框)用于隱藏軌道軌道內的拇指邊框。當然你還需要紅點。所有五個元素都會得到 position: absolute

<div id="scrollbar">

    <div id="track"></div>

    <div id="thumb">

        <div class="white_mask"></div>

        <div id="red_dot"></div>

    </div>

</div>

基本 CSS(無尺寸)


#scrollbar {

    position: absolute;

}


#track {

    position: absolute;

    border-right: 3px solid #000;

    border-left: 3px solid #000;

}


#thumb {

    position: absolute;

    border: 1px solid #000;

    border-radius: 50%;

    background-color: white;

}


.white_mask {

    position: absolute;

    background-color: white;

}


#red_dot {

    position: absolute;

    border-radius: 50%;

    background-color: #9c0000;

}

* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}


#container {

    position: relative;

    width: 100vw;

    height: 100vh;

    overflow: hidden;

}


#scrollbar {

    position: absolute;

    right: 100px;

    top: 0;

    width: 120px;

    height: 100%;

    z-index: 10;

}


#track {

    position: absolute;

    top: 0;

    right: 20px;

    width: 80px;

    height: 100%;

    border-right: 12px solid #000;

    border-left: 12px solid #000;

}


#thumb {

    position: absolute;

    top: 0;

    right: 0;

    width: 120px;

    height: 128px;

    border: 4px solid #000;

    border-top: 8px solid #000;

    border-bottom: 8px solid #000;

    border-radius: 50%;

    background-color: white;

}


.white_mask {

    position: absolute;

    top: -8px;

    right: 28px;

    width: 56px;

    height: 128px;

    background-color: white;

}


.white_mask.big {

    top: -16px;

    right: 12px;

    width: 88px;

    height: 144px;

}


#thumb_mask {

    position: absolute;

    top: -16px;

    left: 8px;

    width: 96px;

    height: 144px;

    overflow: hidden;

}


.quarter_border {

    position: absolute;

    width: 80px;

    height: 100px;

    border-right: 12px solid #000;

    border-left: 12px solid #000;

    border-radius: 50%;

    background-color: white;

}


.quarter_border.top {

    top: -52px;

}


.quarter_border.right {

    right: -60px;

}


.quarter_border.bottom {

    bottom: -52px;

}


.quarter_border.left {

    left: -60px;

}


#red_dot {

    position: absolute;

    top: 0;

    left: 0;

    width: 112px;

    height: 112px;

    border: 8px solid white;

    border-radius: 50%;

    background-color: #9c0000;

}

<div id="container">

  <div id="scrollbar">

    <div id="track"></div>

    <div id="thumb">

      <div class="white_mask"></div>

      <div id="red_dot"></div>

    </div>

  </div>

</div>

高級滾動條

由于拇指和軌道相互交匯處存在小角,因此您可以使用 overflow: hidden 在遮罩 div 中添加四個具有圓形邊框的附加 div,這樣四個 div 中的四分之一即可可見的。您還需要在四個 div 下使用第二個白色蒙版來隱藏角落。


要增加和減少border-width,您需要為上/下邊框和左/右邊框定義不同的值。此外,紅點需要一個白色邊框來平滑拇指邊框的內部。


<div id="scrollbar">

    <div id="track"></div>

    <div id="thumb">

        <div class="white_mask"></div>

        <div class="white_mask small"></div>

        <div id="thumb_mask">

            <div class="quarter_border top right"></div>

            <div class="quarter_border bottom right"></div>

            <div class="quarter_border top left"></div>

            <div class="quarter_border bottom left"></div>

        </div>

        <div id="red_dot"></div>

    </div>

</div>

附加 CSS(無尺寸)


#thumb {

    ...

    border-top: 2px solid #000;

    border-bottom: 2px solid #000;

}


#thumb_mask {

    position: absolute;

    overflow: hidden;

}


.quarter_border {

    position: absolute;

    border-right: 3px solid #000;

    border-left: 3px solid #000;

    border-radius: 50%;

    background-color: white;

}


#red_dot{

    ...

    border: 2px solid white;

}

* {

  margin: 0;

  padding: 0;

  box-sizing: border-box;

}


#container {

  position: relative;

    width: 100vw;

    height: 100vh;

  overflow: hidden;

}


#scrollbar {

    position: absolute;

    right: 100px;

    top: 0;

    width: 120px;

    height: 100%;

    z-index: 10;

}


#track {

    position: absolute;

    top: 0;

    right: 20px;

    width: 80px;

    height: 100%;

    border-right: 12px solid #000;

    border-left: 12px solid #000;

}


#thumb {

    position: absolute;

    top: 0;

    right: 0;

    width: 120px;

    height: 128px;

    border: 4px solid #000;

    border-top: 8px solid #000;

    border-bottom: 8px solid #000;

    border-radius: 50%;

    background-color: white;

}


.white_mask {

    position: absolute;

    top: -4px;

    right: 28px;

    width: 56px;

    height: 128px;

    background-color: white;

}


.white_mask.big {

    top: -16px;

    right: 12px;

    width: 88px;

    height: 144px;

}


#thumb_mask {

    position: absolute;

    top: -16px;

    left: 8px;

    width: 96px;

    height: 144px;

    overflow: hidden;

}


.quarter_border {

    position: absolute;

    width: 80px;

    height: 100px;

    border-right: 12px solid #000;

    border-left: 12px solid #000;

    border-radius: 50%;

    background-color: white;

}


.quarter_border.top {

    top: -52px;

}


.quarter_border.right {

    right: -60px;

}


.quarter_border.bottom {

    bottom: -52px;

}


.quarter_border.left {

    left: -60px;

}


#red_dot {

    position: absolute;

    top: 0;

    left: 0;

    width: 112px;

    height: 112px;

    border: 8px solid white;

    border-radius: 50%;

    background-color: #9c0000;

}

<div id="container">


  <div id="scrollbar">

    <div id="track"></div>

    <div id="thumb">

      <div class="white_mask"></div>

      <div class="white_mask big"></div>

      <div id="thumb_mask">

        <div class="quarter_border top right"></div>

        <div class="quarter_border bottom right"></div>

        <div class="quarter_border top left"></div>

        <div class="quarter_border bottom left"></div>

      </div>

      <div id="red_dot"></div>

    </div>

  </div>


</div>

不幸的是,這些硬幣并不完全適合拇指和軌道。因此,將滾動條構建為 SVG 并操作其組件可能是更好的方法。


基礎 JavaScript

有多種可能性和功能可以通過不同的屬性來操作滾動條,例如top、scrollTop 或transform。我在這里僅用于演示top和一些基本功能(例如我省略了resize上滾動位置的調整)。


基本常數

為了讓滾動條首先工作,您需要三個常量thumb_height(包括其邊框)、scroll_range(最大拇指位置)和 diff_height(隱藏內容)。


const thumb_height = thumb.getBoundingClientRect().height;

const scroll_range = window.innerHeight - thumb_height;

const diff_height = content.scrollHeight - window.innerHeight

滾動功能

然后,您需要滾動函數,在其中計算新的拇指位置和內容滾動,并設置兩個元素的樣式(如果拇指位于滾動范圍內)。


內容滾動是初始隱藏內容的可見百分比。百分比的計算方式為:拇指位置除以其最大值(滾動范圍)。


拖動拇指:

您可以從 mousedown 事件中的鼠標光標位置獲取拇指位置:e.clientY(按拇指高度的一半進行校正)。


您還必須確保當拇指位置變得太小或太大時,例如離開容器(此處為窗口)時,拇指不會消失。因此,您必須檢查位置是否低于 0 或高于滾動范圍,只有在沒有的情況下才對元素設置樣式。


function dragThumb(e) {

  const thumb_pos = e.clientY - (thumb_height / 2);

  const content_scroll = -diff_height * thumb_pos / scroll_range;


  if (thumb_pos >= 0 && thumb_pos <= scroll_range) {

    thumb.style.top = thumb_pos + 'px';

    content.style.top = content_scroll + 'px';

  }

}

對于鼠標滾輪:

您可以從拇指增加或減少的實際 top 屬性獲取拇指位置(取決于 wheel 事件中的鼠標滾輪方向:e.deltaY)固定量100(您可以修改該值以更快或更慢地滾動)。


對于樣式,您還必須處理兩種極端條件,因為重擊位置(以固定量計算)有時不會“落地”。正好在 0 或滾動范圍上。您可以使用 if 塊來完成此操作,如 dragThumb() (您需要 3 個),或者您可以使用三元運算符 ? :,如以下代碼片段。


function scrollContent(e) {

  const thumb_pos = parseInt(thumb.style.top) + (e.deltaY < 0 ? -100 : 100);

  const content_scroll = -diff_height * thumb_pos / scroll_range;


  thumb.style.top = thumb_pos < 0 ? 0 : (thumb_pos > scroll_range ? scroll_range : thumb_pos) + 'px';

  content.style.top = thumb_pos < 0 ? 0 : (thumb_pos > scroll_range ? -diff_height : content_scroll) + 'px';

}

事件監聽器

最后,您需要一個事件監聽器,您可以在其中調用滾動函數。


對于鼠標滾輪:


document.addEventListener('wheel', scrollContent);

拖動拇指:

您需要兩個額外的事件偵聽器,一個僅在最初單擊拇指時偵聽鼠標移動,另一個用于在釋放鼠標按鈕時刪除該鼠標移動偵聽器。


thumb.addEventListener('mousedown', function(e) {

  e.preventDefault();                           // fixed a bug with 'mouseup'

  document.addEventListener('mousemove', dragThumb);

});


document.addEventListener('mouseup', function() {

  document.removeEventListener('mousemove', dragThumb);

});

工作示例:

兩個滾動函數都合并到函數scrollContent()中。拇指位置是在兩個事件處理程序(調用 scrollContent())中計算的:dragThumb() 和 wheel 事件的匿名函數。


這三個常量是在頁面加載和窗口調整大小時調用的重置函數resetScroll()(因此定義為普通變量let)中計算的。該函數還使用實際的拇指位置調用滾動函數scrollContent()。


因為 mouseup 的事件偵聽器“聾”如果事件發生在堆棧片段之外,我將其匿名函數轉換為函數 stopDrag() ,該函數被稱為 mouseup 和 mouseleave


document.addEventListener('DOMContentLoaded', function() {


  const thumb = document.getElementById('thumb');

  const content = document.getElementById('content');

  let thumb_height, scroll_range, diff_height;

  

  function resetScroll() {

    thumb_height = thumb.getBoundingClientRect().height;

    scroll_range = window.innerHeight - thumb_height;

    diff_height = content.scrollHeight - window.innerHeight;

    

    scrollContent(parseInt(thumb.style.top));

  }


  function scrollContent(thumbPos) {

    const newScroll = -diff_height * thumbPos / scroll_range;


    thumb.style.top = thumbPos < 0 ? 0 : (thumbPos > scroll_range ? scroll_range : thumbPos) + 'px';

    content.style.top = thumbPos < 0 ? 0 : (thumbPos > scroll_range ? -diff_height : newScroll) + 'px';

  }


  function dragThumb(e) {

    scrollContent(e.clientY - (thumb_height / 2));

  }

  

  function stopDrag(e) {

    document.removeEventListener('mousemove', dragThumb);

  }


  thumb.addEventListener('mousedown', function(e) {

    e.preventDefault();

    document.addEventListener('mousemove', dragThumb);

  });


  document.addEventListener('mouseup', stopDrag);

  document.addEventListener("mouseleave", stopDrag);


  document.addEventListener('wheel', function(e) {

    if (!e.ctrlKey) {

      scrollContent(parseInt(thumb.style.top) + (e.deltaY < 0 ? -100 : 100));

    }

  });

  

  window.addEventListener('resize', resetScroll);

  

                          //initial reset

  document.scrollTop = 0;

  thumb.style.top = 0;

  

  resetScroll();


});

* {

  margin: 0;

  padding: 0;

  box-sizing: border-box;

}


#container {

  position: relative;

  overflow: hidden;

}


#content {

  position: relative;

  top: 0;

  right: 0;

  width: 100vw;

  height: 100vh;

  padding-right: 40px;

}


#scrollbar {

  position: absolute;

  right: 5px;

  top: 0;

  width: 30px;

  height: 100%;

  z-index: 10;

}


#track {

  position: absolute;

  top: 0;

  right: 5px;

  width: 20px;

  height: 100%;

  border-right: 3px solid #000;

  border-left: 3px solid #000;

}


#thumb {

  position: absolute;

  top: 0;

  right: 0;

  width: 30px;

  height: 32px;

  border: 1px solid #000;

  border-top: 2px solid #000;

  border-bottom: 2px solid #000;

  border-radius: 50%;

  background-color: white;

}


.white_mask {

  position: absolute;

  top: -3px;

  right: 6px;

  width: 14px;

  height: 30px;

  background-color: white;

}


.white_mask.big {

  top: -4px;

  right: 3px;

  width: 22px;

  height: 36px;

}


#thumb_mask {

  position: absolute;

  top: -4px;

  left: 2px;

  width: 24px;

  height: 36px;

  overflow: hidden;

}


.quarter_border {

  position: absolute;

  width: 20px;

  height: 25px;

  border-right: 3px solid #000;

  border-left: 3px solid #000;

  border-radius: 50%;

  background-color: white;

}


.quarter_border.top {

  top: -13px;

}


.quarter_border.right {

  right: -15px;

}


.quarter_border.bottom {

  bottom: -13px;

}


.quarter_border.left {

  left: -15px;

}


#red_dot {

  position: absolute;

  top: 0;

  left: 0;

  width: 28px;

  height: 28px;

  border: 2px solid white;

  border-radius: 50%;

  background-color: #9c0000;

}

<div id="container">


  <div id="scrollbar">

    <div id="track"></div>

    <div id="thumb">

      <div class="white_mask"></div>

      <div class="white_mask big"></div>

      <div id="thumb_mask">

        <div class="quarter_border top right"></div>

        <div class="quarter_border bottom right"></div>

        <div class="quarter_border top left"></div>

        <div class="quarter_border bottom left"></div>

      </div>

      <div id="red_dot"></div>

    </div>

  </div>


  <div id="content">

    <p>first</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>

    <p>last</p>

  </div>


</div>


查看完整回答
反對 回復 2023-12-19
  • 1 回答
  • 0 關注
  • 148 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號