update
This commit is contained in:
parent
84cf484a9d
commit
9767bac297
|
|
@ -292,80 +292,103 @@
|
|||
}
|
||||
},
|
||||
|
||||
ClickMenuHandler: function() {
|
||||
// 處理主選單切換(漢堡 icon)
|
||||
$(document).on('click', '.navbar-toggle', function (e) {
|
||||
e.preventDefault();
|
||||
ClickMenuHandler: function() {
|
||||
// 處理主選單切換(漢堡 icon)
|
||||
$(document).on('click', '.navbar-toggle', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
// 確保 .navbar-toggle 放到 .modules-menu 後面
|
||||
$('.mobile-menu').each(function () {
|
||||
var $menu = $(this);
|
||||
if ($menu.find('.modules-menu').length && !$menu.find('.modules-menu + .navbar-toggle').length) {
|
||||
$menu.find('.modules-menu').after($menu.find('.navbar-toggle'));
|
||||
// 確保 .navbar-toggle 放到 .modules-menu 後面
|
||||
$('.mobile-menu').each(function () {
|
||||
var $menu = $(this);
|
||||
if ($menu.find('.modules-menu').length && !$menu.find('.modules-menu + .navbar-toggle').length) {
|
||||
$menu.find('.modules-menu').after($menu.find('.navbar-toggle'));
|
||||
}
|
||||
});
|
||||
|
||||
$('.mobile-menu').toggleClass('active');
|
||||
$('body').toggleClass('noscroll');
|
||||
|
||||
// ★ 修正:依據 active 狀態決定 collapsed 的加/移除
|
||||
if ($('.mobile-menu').hasClass('active')) {
|
||||
$('.mobile-menu .navbar-toggle').removeClass('collapsed'); // 打開 → 叉叉
|
||||
} else {
|
||||
$('.mobile-menu .navbar-toggle').addClass('collapsed'); // 關閉 → 三條橫線
|
||||
}
|
||||
|
||||
// 關閉所有下拉選單
|
||||
$('.mobile-menu1 > ul, .mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu1 > .menu-drop, .mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
|
||||
// 無障礙:聚焦第一個互動元素
|
||||
if ($('.mobile-menu').hasClass('active')) {
|
||||
setTimeout(function () {
|
||||
$('.modules-menu').find('input, button, select, textarea, a').first().focus();
|
||||
}, 100);
|
||||
}
|
||||
});
|
||||
|
||||
$('.mobile-menu').toggleClass('active');
|
||||
$('body').toggleClass('noscroll');
|
||||
$('.mobile-menu .navbar-toggle').removeClass('collapsed');
|
||||
|
||||
// 關閉所有下拉選單
|
||||
$('.mobile-menu1 > ul, .mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu1 > .menu-drop, .mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
|
||||
// 無障礙:聚焦第一個互動元素
|
||||
if ($('.mobile-menu').hasClass('active')) {
|
||||
setTimeout(function () {
|
||||
$('.modules-menu').find('input, button, select, textarea, a').first().focus();
|
||||
}, 100);
|
||||
}
|
||||
});
|
||||
// ✅ Tab 鍵跳過 .navbar-toggle 時,觸發與點擊相同的收合邏輯
|
||||
$(document).on('focusout', '.mobile-menu', function(e) {
|
||||
// ✅ Tab 鍵跳過 .mobile-menu 時,觸發收合邏輯
|
||||
$(document).on('focusout', '.mobile-menu', function(e) {
|
||||
setTimeout(function() {
|
||||
var $newFocus = $(document.activeElement);
|
||||
// 焦點已離開 .mobile-menu 且選單是展開狀態
|
||||
if ($('.mobile-menu').hasClass('active') && $newFocus.closest('.mobile-menu').length === 0) {
|
||||
// ✅ 直接 trigger click,與按下 .navbar-toggle 執行完全相同的動作
|
||||
$('.navbar-toggle').first().trigger('click');
|
||||
var $newFocus = $(document.activeElement);
|
||||
|
||||
// 焦點在 body 時代表滑鼠正在點擊中,不處理
|
||||
if ($newFocus.is('body')) return;
|
||||
|
||||
if ($('.mobile-menu').hasClass('active') && $newFocus.closest('.mobile-menu').length === 0) {
|
||||
|
||||
var $btn = $('.navbar-toggle').first();
|
||||
|
||||
if ($btn.attr('data-bs-toggle')) {
|
||||
var target = $btn.attr('data-bs-target');
|
||||
var bsCollapse = window.bootstrap && bootstrap.Collapse.getInstance($(target)[0]);
|
||||
if (bsCollapse) bsCollapse.hide();
|
||||
$('.mobile-menu').removeClass('active');
|
||||
$('body').removeClass('noscroll');
|
||||
$('.mobile-menu .navbar-toggle').addClass('collapsed');
|
||||
$('.mobile-menu1 > ul, .mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu1 > .menu-drop, .mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
} else {
|
||||
$btn.trigger('click');
|
||||
}
|
||||
}
|
||||
}, 50);
|
||||
});
|
||||
});
|
||||
|
||||
$('.mobile-menu1 > .menu-drop').click(function(){
|
||||
var $that = $(this);
|
||||
var opencheck1 = $that.hasClass('opened');
|
||||
if ( opencheck1 == 0 ) {
|
||||
$('.mobile-menu1 > ul').not($that.siblings('ul')).slideUp(500);
|
||||
$('.mobile-menu1 > .menu-drop').not($that).removeClass('opened');
|
||||
$('.mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
$that.siblings('ul').slideDown(500);
|
||||
$that.addClass('opened');
|
||||
$('.mobile-menu1 > .menu-drop').click(function(){
|
||||
var $that = $(this);
|
||||
var opencheck1 = $that.hasClass('opened');
|
||||
if ( opencheck1 == 0 ) {
|
||||
$('.mobile-menu1 > ul').not($that.siblings('ul')).slideUp(500);
|
||||
$('.mobile-menu1 > .menu-drop').not($that).removeClass('opened');
|
||||
$('.mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
$that.siblings('ul').slideDown(500);
|
||||
$that.addClass('opened');
|
||||
|
||||
} else if (opencheck1 == 1) {
|
||||
$that.siblings('ul').slideUp(500);
|
||||
$('.mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
$that.removeClass('opened');
|
||||
} else if (opencheck1 == 1) {
|
||||
$that.siblings('ul').slideUp(500);
|
||||
$('.mobile-menu2 > ul').slideUp(500);
|
||||
$('.mobile-menu2 > .menu-drop').removeClass('opened');
|
||||
$that.removeClass('opened');
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
$('.mobile-menu2 > .menu-drop').click(function(){
|
||||
var $that = $(this);
|
||||
var opencheck2 = $that.hasClass('opened');
|
||||
if ( opencheck2 == 0 ) {
|
||||
$('.mobile-menu2 > ul').not($that.siblings('ul')).slideUp(500);
|
||||
$('.mobile-menu2 > .menu-drop').not($that).removeClass('opened');
|
||||
$that.siblings('ul').slideDown(500);
|
||||
$that.addClass('opened');
|
||||
} else if (opencheck2 == 1) {
|
||||
$that.siblings('ul').slideUp(500);
|
||||
$that.removeClass('opened');
|
||||
}
|
||||
})
|
||||
}
|
||||
$('.mobile-menu2 > .menu-drop').click(function(){
|
||||
var $that = $(this);
|
||||
var opencheck2 = $that.hasClass('opened');
|
||||
if ( opencheck2 == 0 ) {
|
||||
$('.mobile-menu2 > ul').not($that.siblings('ul')).slideUp(500);
|
||||
$('.mobile-menu2 > .menu-drop').not($that).removeClass('opened');
|
||||
$that.siblings('ul').slideDown(500);
|
||||
$that.addClass('opened');
|
||||
} else if (opencheck2 == 1) {
|
||||
$that.siblings('ul').slideUp(500);
|
||||
$that.removeClass('opened');
|
||||
}
|
||||
})
|
||||
}
|
||||
};
|
||||
|
||||
// 把orbit物件加到window物件裡面並改名為ORBITFRONT來減少名稱衝突的機會
|
||||
|
|
@ -1078,56 +1101,59 @@ $(function() {
|
|||
}
|
||||
}
|
||||
|
||||
// E. 重新計算標題 (關鍵邏輯:若 hasOriginalTitle 為真,則不進入此區塊)
|
||||
if (!hasOriginalTitle) {
|
||||
if (linkText === "" && $img.length > 0) {
|
||||
var rawAlt = ($img.attr('alt') || '').trim();
|
||||
var forbidden = ['這是一張圖片', '圖片', 'image', 'photo', '圖', ''];
|
||||
var imgAlt = forbidden.some(function(txt) { return rawAlt.toLowerCase() === txt; })
|
||||
? ($a.attr('aria-label') || i18n.link) : rawAlt;
|
||||
|
||||
var fileInfo = fileExt ? '[' + fileExt.toUpperCase() + '] ' : '';
|
||||
$a.attr('title', (fileInfo + imgAlt + " " + windowTask).trim());
|
||||
$img.attr('alt', imgAlt);
|
||||
}
|
||||
else if (linkText !== "") {
|
||||
if (fileExt !== "" || hasBadSymbol || currentTitle === "" || currentTitle.includes('/uploads/')) {
|
||||
if (fileExt !== "") {
|
||||
$a.attr('title', linkText + " ." + fileExt + " " + windowTask);
|
||||
} else {
|
||||
$a.attr('title', windowTask);
|
||||
}
|
||||
// E. 重新計算標題 (關鍵邏輯:若 hasOriginalTitle 為真,則不進入此區塊)
|
||||
if (!hasOriginalTitle) {
|
||||
if (linkText === "" && $img.length > 0) {
|
||||
var rawAlt = ($img.attr('alt') || '').trim();
|
||||
var forbidden = ['這是一張圖片', '圖片', 'image', 'photo', '圖', ''];
|
||||
var imgAlt = forbidden.some(function(txt) { return rawAlt.toLowerCase() === txt; })
|
||||
? ($a.attr('aria-label') || i18n.link) : rawAlt;
|
||||
|
||||
var fileInfo = fileExt ? '[' + fileExt.toUpperCase() + '] ' : '';
|
||||
$a.attr('title', (fileInfo + imgAlt + " " + windowTask).trim());
|
||||
$img.attr('alt', imgAlt);
|
||||
}
|
||||
else if (linkText !== "") {
|
||||
if (fileExt !== "" || hasBadSymbol || currentTitle === "" || currentTitle.includes('/uploads/')) {
|
||||
if (fileExt !== "") {
|
||||
$a.attr('title', linkText + " ." + fileExt + " " + windowTask);
|
||||
} else {
|
||||
$a.attr('title', windowTask);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ✅ 符合 HM1240404E:title 不應與連結文字或圖片 alt 重複
|
||||
if (hasOriginalTitle && currentTitle !== "") {
|
||||
var titleWithoutWindow = currentTitle
|
||||
.replace('(在本視窗開啟)', '')
|
||||
.replace('(在新視窗開啟)', '')
|
||||
.replace('Open in this window', '')
|
||||
.replace('Open in new window', '')
|
||||
.replace('另開新視窗前往', '')
|
||||
.replace('另開新視窗', '')
|
||||
.trim();
|
||||
// ✅ 符合 HM1240404E:title 不應與連結文字或圖片 alt 重複
|
||||
if (hasOriginalTitle && currentTitle !== "") {
|
||||
var titleWithoutWindow = currentTitle
|
||||
.replace('(在本視窗開啟)', '')
|
||||
.replace('(在新視窗開啟)', '')
|
||||
.replace('Open in this window', '')
|
||||
.replace('Open in new window', '')
|
||||
.replace('另開新視窗前往', '')
|
||||
.replace('另開新視窗', '')
|
||||
.trim();
|
||||
|
||||
// ✅ title 去掉開窗字串後,若與連結文字或圖片原始 alt 相同,則只保留開窗提示
|
||||
if (
|
||||
(titleWithoutWindow === linkText && linkText !== i18n.link) ||
|
||||
(imgAltOriginal !== '' && titleWithoutWindow === imgAltOriginal)
|
||||
) {
|
||||
$a.attr('title', windowTask);
|
||||
}
|
||||
|
||||
// ✅ 最終清理:若 title 出現空括號 () 則移除並補上正確開窗提示
|
||||
var finalTitle = ($a.attr('title') || '').trim();
|
||||
if (finalTitle.includes('()')) {
|
||||
finalTitle = finalTitle.replace(/\(\)/g, '').trim();
|
||||
$a.attr('title', finalTitle + ' ' + windowTask);
|
||||
}
|
||||
// ✅ title 去掉開窗字串後,若與連結文字或圖片原始 alt 相同,則只保留開窗提示
|
||||
// ✅ 新增:若 linkText 包含副檔名且 title 也是同樣檔名,也只保留開窗提示
|
||||
if (
|
||||
(titleWithoutWindow === linkText && linkText !== i18n.link) ||
|
||||
(imgAltOriginal !== '' && titleWithoutWindow === imgAltOriginal) ||
|
||||
(fileExt !== '' && linkText.toLowerCase().endsWith('.' + fileExt) && titleWithoutWindow === linkText)
|
||||
) {
|
||||
$a.attr('title', windowTask);
|
||||
return; // ✅ 加上 return,避免繼續執行後面的清理邏輯造成二次污染
|
||||
}
|
||||
|
||||
// ✅ 最終清理:若 title 出現空括號 () 則移除並補上正確開窗提示
|
||||
var finalTitle = ($a.attr('title') || '').trim();
|
||||
if (finalTitle.includes('()')) {
|
||||
finalTitle = finalTitle.replace(/\(\)/g, '').trim();
|
||||
$a.attr('title', finalTitle + ' ' + windowTask);
|
||||
}
|
||||
}
|
||||
|
||||
// F. 最終清理:移除冗餘 label,避免螢幕閱讀器唸兩次
|
||||
$a.removeAttr('aria-label');
|
||||
});
|
||||
|
|
@ -1161,6 +1187,47 @@ $(function() {
|
|||
fixAccessibilityAll();
|
||||
}, 800);
|
||||
});
|
||||
// 修正漢堡選單按鈕無障礙
|
||||
$(function() {
|
||||
function fixNavbarToggleA11y() {
|
||||
var isEn = $('html').attr('lang') === 'en';
|
||||
var label = isEn ? '開啟或關閉導覽選單' : '開啟或關閉導覽選單';
|
||||
|
||||
$('.navbar-toggle').each(function() {
|
||||
var $btn = $(this);
|
||||
|
||||
// 修正 title
|
||||
$btn.attr('title', label);
|
||||
|
||||
// 修正 sr-only 文字(原本是 "Toggle navigation")
|
||||
var $sr = $btn.find('.sr-only');
|
||||
if ($sr.length) {
|
||||
$sr.text(label);
|
||||
} else {
|
||||
$btn.prepend('<span class="sr-only">' + label + '</span>');
|
||||
}
|
||||
|
||||
// 補上 aria-label
|
||||
$btn.attr('aria-label', label);
|
||||
|
||||
// 補上 aria-expanded(依據目前是否展開)
|
||||
if (!$btn.attr('aria-expanded')) {
|
||||
var isExpanded = !$btn.hasClass('collapsed');
|
||||
$btn.attr('aria-expanded', isExpanded ? 'true' : 'false');
|
||||
}
|
||||
|
||||
// 點擊時同步更新 aria-expanded
|
||||
$btn.off('click.navA11y').on('click.navA11y', function() {
|
||||
setTimeout(function() {
|
||||
var isExpanded = !$('.navbar-toggle').hasClass('collapsed');
|
||||
$('.navbar-toggle').attr('aria-expanded', isExpanded ? 'true' : 'false');
|
||||
}, 50);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
setTimeout(fixNavbarToggleA11y, 500);
|
||||
});
|
||||
|
||||
|
||||
$(function() {
|
||||
|
|
|
|||
|
|
@ -26,16 +26,16 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
label[for="open-orbit-login"] {
|
||||
@media(max-width:768px){
|
||||
display: none!important;
|
||||
}
|
||||
}
|
||||
[accesskey="U"],[accesskey="W"]{
|
||||
@media(max-width:768px){
|
||||
color: #666!important;
|
||||
}
|
||||
}
|
||||
// label[for="open-orbit-login"] {
|
||||
// @media(max-width:768px){
|
||||
// display: none!important;
|
||||
// }
|
||||
// }
|
||||
// [accesskey="U"],[accesskey="W"]{
|
||||
// @media(max-width:768px){
|
||||
// color: #666!important;
|
||||
// }
|
||||
// }
|
||||
.orbit-bar-inner{
|
||||
[accesskey="U"]{
|
||||
height: 40px;
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ li.filter_tab{
|
|||
background-color: #C51A2C;
|
||||
}
|
||||
&:nth-child(5){
|
||||
background-color: #FF8800;
|
||||
background-color: #995200;
|
||||
}
|
||||
&:nth-child(6){
|
||||
background-color: #B3005C;
|
||||
|
|
@ -2689,7 +2689,7 @@ table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before, tabl
|
|||
|
||||
.社會實踐 .i-annc__category-wrap,
|
||||
.Community .i-annc__category-wrap {
|
||||
background-color: #FF8800;
|
||||
background-color: #995200;
|
||||
}
|
||||
|
||||
.USR成果 .i-annc__category-wrap,
|
||||
|
|
|
|||
|
|
@ -1,33 +1,23 @@
|
|||
@charset "utf-8";
|
||||
|
||||
@import "../initial";
|
||||
.video_title {
|
||||
color: #173463;
|
||||
}
|
||||
.video_snapshot_wrap {
|
||||
position: relative;
|
||||
|
||||
}
|
||||
.video_linkwrapper2{
|
||||
padding: 0.2em;
|
||||
aspect-ratio: 16 / 9;
|
||||
}
|
||||
.modal-header{
|
||||
z-index: 10;
|
||||
position: relative;
|
||||
.video_group_time {
|
||||
color: #6e6e6e !important;
|
||||
}
|
||||
@media (min-width: 769px) {
|
||||
.modal-dialog {
|
||||
margin: 7.875em auto;
|
||||
}
|
||||
}
|
||||
.video_data-index-3{
|
||||
.video_time{
|
||||
display: none;
|
||||
}
|
||||
.video_tablist a{
|
||||
margin: 0.25em;
|
||||
}
|
||||
.i-annc__page-title{
|
||||
@extend .unity-title;
|
||||
}
|
||||
.video_title{
|
||||
color: #173463;
|
||||
}
|
||||
.video_desc{
|
||||
cite{
|
||||
display: none;
|
||||
|
|
@ -39,6 +29,9 @@
|
|||
display: block!important;
|
||||
}
|
||||
}
|
||||
.w-video_data {
|
||||
z-index: 1;
|
||||
}
|
||||
.Video__Player{
|
||||
display: flex;
|
||||
-webkit-box-align: center;
|
||||
|
|
@ -53,8 +46,7 @@
|
|||
padding-top: 0px;
|
||||
border-radius: 50%;
|
||||
border: 0px;
|
||||
background-color: $theme-color-second;
|
||||
background: url(/assets/btn-play.svg) no-repeat;
|
||||
background: url(/assets/youtube.png) no-repeat;
|
||||
background-size: 100%;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
|
|
@ -182,7 +174,7 @@
|
|||
-o-transition: all .3s ease;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
.video_linkwrapper2{
|
||||
.video_linkwrapper{
|
||||
.video_snapshot{
|
||||
-webkit-transform: scale(1.1) !important;
|
||||
-ms-transform: scale(1.1) !important;
|
||||
|
|
@ -209,18 +201,20 @@
|
|||
.video_data-widget-1{
|
||||
.video_group_time{
|
||||
display: none;
|
||||
}
|
||||
h3 {
|
||||
margin-top: 0.5em;
|
||||
font-size: 0.8em;
|
||||
color: #173463;
|
||||
}
|
||||
.video_info a {
|
||||
color: #173463;
|
||||
|
||||
}
|
||||
.video_info{
|
||||
margin: 0;
|
||||
padding: 0.5em;
|
||||
background: #fff;
|
||||
a{
|
||||
color: #173463;
|
||||
h3{
|
||||
margin-top: 0.5em;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.video_data-widget-2{
|
||||
|
|
@ -263,12 +257,6 @@
|
|||
.video_tags2{
|
||||
display: block!important;
|
||||
}
|
||||
.video_linkwrapper2{
|
||||
|
||||
@media(min-width:$screen-xs)and(max-width:768px){
|
||||
height: 24em;
|
||||
}
|
||||
}
|
||||
width: 100% ;
|
||||
margin-bottom: 2em;
|
||||
@media(max-width:1024px){
|
||||
|
|
@ -410,23 +398,6 @@
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
.video_linkwrapper2{
|
||||
@media(min-width:1025px){
|
||||
height: 40.6em;
|
||||
}
|
||||
@media(min-width:769px)and(max-width:1024px){
|
||||
height: 32.6em!important;
|
||||
}
|
||||
@media(max-width: 821px)and(min-width: 769px){
|
||||
height: 25.6em!important;
|
||||
}
|
||||
@media(max-width:$screen-xs){
|
||||
height: 14.5em!important;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -473,7 +444,7 @@
|
|||
text-overflow: ellipsis;
|
||||
max-height: 4.5em;
|
||||
line-height: 1.5em;
|
||||
min-height: 4.5em;
|
||||
// min-height: 4.5em;
|
||||
}
|
||||
.video_info{
|
||||
margin:0.5em 0;
|
||||
|
|
@ -503,7 +474,7 @@
|
|||
font-family: "Noto Sans TC", PingFangTC, 微軟正黑體, "Microsoft JhengHei", sans-serif;
|
||||
font-weight: normal;
|
||||
letter-spacing: 0.3px;
|
||||
color: #6e6e6e;
|
||||
color: #8f8f8f;
|
||||
line-height: 1.6;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
|
@ -549,7 +520,7 @@
|
|||
border-radius: 50%;
|
||||
border: 0px;
|
||||
background-color: $theme-color-second;
|
||||
background: url(/assets/btn-play.svg) no-repeat;
|
||||
background: url(/assets/youtube.png) no-repeat;
|
||||
background-size: 100%;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
|
|
@ -602,6 +573,8 @@
|
|||
position: absolute;
|
||||
right: 1em;
|
||||
bottom: 1em;
|
||||
z-index: 100;
|
||||
width: auto;
|
||||
.prev-btn,.next-btn{
|
||||
color: #909090;
|
||||
background: #fff;
|
||||
|
|
@ -656,6 +629,89 @@
|
|||
white-space: normal;
|
||||
}
|
||||
}
|
||||
.video_data-widget-6{
|
||||
.video_info{
|
||||
display: none;
|
||||
}
|
||||
.videohover{
|
||||
position: absolute;
|
||||
transition: 0.3s;
|
||||
z-index: 2;
|
||||
opacity: 1;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
background-image: linear-gradient(180deg, transparent 0, #00000063 90%, #000);
|
||||
}
|
||||
.video_data{
|
||||
padding: 0;
|
||||
}
|
||||
.video_snapshot{
|
||||
transform: none!important;
|
||||
box-shadow: none!important;
|
||||
}
|
||||
@media(max-width:768px){
|
||||
margin-bottom: 3em;
|
||||
}
|
||||
.btnwrapper{
|
||||
@media(max-width:768px)and(min-width:$screen-xs){
|
||||
top:100%!important;
|
||||
width: 14%!important;
|
||||
left: 44%!important;
|
||||
}
|
||||
@media(max-width:$screen-xs){
|
||||
top: 100%!important;
|
||||
width: 24% !important;
|
||||
left: 38% !important;
|
||||
}
|
||||
}
|
||||
.video_data_wrap{
|
||||
@media(min-width:$screen-xs){
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
}
|
||||
// .video_data{
|
||||
// @media(max-width:821px)and(min-width:$screen-xs){
|
||||
// width: 48vw !important;
|
||||
// float: none;
|
||||
// }
|
||||
// @media(max-width:$screen-xs){
|
||||
// width: 92.5vw !important;
|
||||
// margin-left: 0 !important;
|
||||
// margin-right: 1em !important;
|
||||
// float: none;
|
||||
// }
|
||||
// }
|
||||
.video_desc{
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 3;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
max-height: 4.5em;
|
||||
line-height: 1.5em;
|
||||
// min-height: 4.5em;
|
||||
}
|
||||
.video_info{
|
||||
margin:0.5em 0;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
background-image: linear-gradient(180deg, transparent 0, #00000063 90%, #000);
|
||||
}
|
||||
.video_link{
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 3;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: normal;
|
||||
}
|
||||
}
|
||||
.video_detail{
|
||||
@media(max-width:820px){
|
||||
.video_box_wrap{
|
||||
|
|
@ -672,7 +728,7 @@
|
|||
.movie_desc{
|
||||
clear: both;
|
||||
letter-spacing: 0.3px;
|
||||
color: #6e6e6e;
|
||||
color: #8f8f8f;
|
||||
line-height: 1.8;
|
||||
}
|
||||
.video_title {
|
||||
|
|
@ -692,7 +748,7 @@
|
|||
clear: both;
|
||||
}
|
||||
.video_group_time{
|
||||
color: #6e6e6e!important;
|
||||
color: #8f8f8f!important;
|
||||
}
|
||||
.movietitle{
|
||||
margin-bottom: 15px;
|
||||
|
|
@ -752,10 +808,17 @@
|
|||
border: 1px solid #6868688f;
|
||||
}
|
||||
.video_linkwrapper{
|
||||
padding: 0;
|
||||
border-radius: 0;
|
||||
position:relative;
|
||||
height: 13.5em;
|
||||
overflow:hidden;
|
||||
width: 100%;
|
||||
transition: transform 0.22s ease, box-shadow 0.22s ease;
|
||||
aspect-ratio: 16 / 9;
|
||||
&:hover{
|
||||
transform: translateY(-6px);
|
||||
box-shadow: 0 12px 32px rgba(127, 119, 221, 0.28);
|
||||
}
|
||||
img{
|
||||
width: 100%;
|
||||
}
|
||||
|
|
@ -782,102 +845,8 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
.video_linkwrapper10{
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
height: 9.5em;
|
||||
@media(max-width: 1025px)and(min-width: 821px){
|
||||
height:7.5em;
|
||||
}
|
||||
@media(max-width: 821px)and(min-width: 769px){
|
||||
height:13em;
|
||||
}
|
||||
@media(max-width:768px)and(min-width: 600px){
|
||||
height: 13.5em;
|
||||
}
|
||||
@media(max-width: $screen-xs){
|
||||
height:13em;
|
||||
}
|
||||
}
|
||||
.video_linkwrapper{
|
||||
@media(max-width: 1025px)and(min-width: 821px){
|
||||
height:10.5em;
|
||||
}
|
||||
@media(max-width: 821px)and(min-width: 769px){
|
||||
height:8em;
|
||||
}
|
||||
@media(max-width:768px)and(min-width: 600px){
|
||||
height: 23.5em;
|
||||
}
|
||||
@media(max-width: $screen-xs){
|
||||
height: 13.5em;
|
||||
}
|
||||
}
|
||||
.video_linkwrapper2{
|
||||
position:relative;
|
||||
height: 13.5em;
|
||||
overflow:hidden;
|
||||
|
||||
@media(max-width: 1025px)and(min-width: 769px){
|
||||
height:10em;
|
||||
|
||||
}
|
||||
@media(max-width: 821px)and(min-width: 768px){
|
||||
height:7.5em;
|
||||
|
||||
}
|
||||
@media(max-width:767px)and(min-width:$screen-xs){
|
||||
height: 22.5em;
|
||||
}
|
||||
@media(max-width:$screen-xs){
|
||||
height: 13.5em;
|
||||
}
|
||||
}
|
||||
.video_linkwrapper3{
|
||||
position:relative;
|
||||
height: 13.5em;
|
||||
overflow:hidden;
|
||||
|
||||
@media(max-width: 1025px)and(min-width: 821px){
|
||||
height:10em;
|
||||
|
||||
}
|
||||
@media(max-width: 821px)and(min-width: 769px){
|
||||
height: 7.8em;
|
||||
|
||||
|
||||
}
|
||||
@media(max-width:768px)and(min-width:$screen-xs){
|
||||
height: 13.5em;
|
||||
|
||||
}
|
||||
@media(max-width: $screen-xs){
|
||||
height:13.5em;
|
||||
}
|
||||
}
|
||||
.video_linkwrapper5{
|
||||
|
||||
position:relative;
|
||||
height: 27em;
|
||||
overflow:hidden;
|
||||
|
||||
@media(max-width: 1025px)and(min-width: 821px){
|
||||
height:21.5em;
|
||||
|
||||
}
|
||||
@media(max-width: 821px)and(min-width: 769px){
|
||||
height: 7.8em;
|
||||
|
||||
|
||||
}
|
||||
@media(max-width:768px)and(min-width:$screen-xs){
|
||||
height: 25em;
|
||||
|
||||
}
|
||||
@media(max-width: $screen-xs){
|
||||
height:13.5em;
|
||||
|
||||
}
|
||||
aspect-ratio: 16 / 9;
|
||||
}
|
||||
.video_group_time{
|
||||
q{
|
||||
|
|
@ -952,12 +921,9 @@
|
|||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
// .video_linkwrapper2{
|
||||
// height: 9.5em;
|
||||
// }
|
||||
.video_desc{
|
||||
letter-spacing: 0.3px;
|
||||
color: #6e6e6e;
|
||||
color: #8f8f8f;
|
||||
line-height: 1.6;
|
||||
max-height: 5em;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
}
|
||||
.行政公告,
|
||||
.Announcements {
|
||||
background-color: #FF4500;
|
||||
background-color: #c23705;
|
||||
border-radius: 0!important;
|
||||
.sitemenu-link {
|
||||
color: #fff;
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
|
||||
.校內活動,
|
||||
.Campus {
|
||||
background-color: #FF44AA;
|
||||
background-color: #d60578;
|
||||
border-radius: 0!important;
|
||||
.sitemenu-link {
|
||||
color: #fff;
|
||||
|
|
@ -66,7 +66,7 @@
|
|||
|
||||
.社會實踐,
|
||||
.Community {
|
||||
background-color: #FF8800;
|
||||
background-color: #995200;
|
||||
border-radius: 0!important;
|
||||
.sitemenu-link {
|
||||
color: #fff;
|
||||
|
|
|
|||
|
|
@ -18,8 +18,7 @@
|
|||
<div class="panel-body">
|
||||
<ul class="i-archive-files-list" data-list="files" data-level="2">
|
||||
<li>
|
||||
<a href="{{file-url}}" class="i-archive-files-item" target="{{target}}" title="{{file-name}}">{{file-name}}</a>
|
||||
<span class="label label-primary {{file-type}}">{{file-type}}</span>
|
||||
<a href="{{file-url}}" class="i-archive-files-item" target="{{target}}" title="{{file-name}}">{{file-name}}<span class="label label-primary {{file-type}}">{{file-type}}</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -2,29 +2,27 @@
|
|||
<h3 class="widget-title"><span>{{widget-title}}</span></h3>
|
||||
<ul class="video_data_wrap col-sm-12" data-list="videos" data-level="0">
|
||||
<li class="video_data col-xs-12 col-sm-4" data-video-url="{{video_url}}" data-video-webm-url="{{video_webm_url}}" data-type="{{video_type}}">
|
||||
|
||||
<a href="{{video_show_url}}" title="{{video_title_escape}}">
|
||||
<div class="video_linkwrapper">
|
||||
|
||||
<div class="videohover">
|
||||
<div class="view_info">
|
||||
<span>{{view_count}}</span>
|
||||
</div>
|
||||
<div class="Video__Player"><button class="Video__PlayerButton"></button></div>
|
||||
<div class="Video__Player"><div class="Video__PlayerButton"></div></div>
|
||||
<div class="videoduration"></div>
|
||||
</div>
|
||||
<a class="video_link" href="{{video_show_url}}" title="{{video_title_escape}}">
|
||||
<img class="video_snapshot" src="{{snapshot_url}}"/>
|
||||
</a>
|
||||
</div>
|
||||
<div class="video_info">
|
||||
<div class="video_length">{{video_duration}}</div>
|
||||
<div data-list="video_tags" data-level="1" class="video_tag"><div class="video_tags2">{{video_tag}}</div></div>
|
||||
<div class="video_keyword">{{video_keyword}}</div>
|
||||
<div class="video_group_time">{{video_postdate}}</div>
|
||||
<div class="video_title"><a class="video_link" href="{{video_show_url}}" title="{{video_title_escape}}"><h5>{{video_title}}</h5></a></div>
|
||||
<div class="video_desc"><a class="video_link" href="{{video_show_url}}" title="{{video_title_escape}}">{{video_desc}}</a></div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="video_info">
|
||||
<div class="video_length">{{video_duration}}</div>
|
||||
<div data-list="video_tags" data-level="1" class="video_tag"><div class="video_tags2">{{video_tag}}</div></div>
|
||||
<div class="video_keyword">{{video_keyword}}</div>
|
||||
<div class="video_group_time">{{video_postdate}}</div>
|
||||
<div class="video_title"><div class="video_link"><h4>{{video_title}}</h4></div></div>
|
||||
<div class="video_desc"><div class="video_link">{{video_desc}}</div></div>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="clearfix"></div>
|
||||
|
|
|
|||
|
|
@ -3,12 +3,9 @@
|
|||
<ul class="video_data_wrap col-sm-12" data-list="videos" data-level="0">
|
||||
<li class="video_data col-sm-4" data-video-url="{{video_url}}" data-video-webm-url="{{video_webm_url}}" data-type="{{video_type}}">
|
||||
<a class="video_link" href="{{video_show_url}}" title="{{video_title_escape}}">
|
||||
<div class="video_linkwrapper2">
|
||||
<div class="video_linkwrapper">
|
||||
<div class="videohover">
|
||||
<div class="view_info">
|
||||
<span>{{view_count}}</span>
|
||||
</div>
|
||||
<div class="Video__Player"><button class="Video__PlayerButton"></button></div>
|
||||
<div class="Video__Player"><div class="Video__PlayerButton"></div></div>
|
||||
<div class="videoduration"></div>
|
||||
</div>
|
||||
<img class="video_snapshot" src="{{snapshot_url}}"/>
|
||||
|
|
@ -107,7 +104,7 @@
|
|||
padding: 10px 0;
|
||||
text-align: center;
|
||||
background-color: #8d681e;
|
||||
color: #fff;
|
||||
color: #333;
|
||||
text-decoration: none;
|
||||
font-size: 120%;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<li class="widget-content">
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</a>
|
||||
</div>
|
||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<a href="{{link_to_show}}" target="{{target}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</a>
|
||||
</div>
|
||||
<div class="widget-content-title">
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<li class="widget-content widget-content-horizontal ">
|
||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</div>
|
||||
</a>
|
||||
<div class="widget-content-title">
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<li class="widget-content widget-content-horizontal col-sm-6">
|
||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</div>
|
||||
<div class="widget-content-title">
|
||||
<a class="" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
||||
|
|
|
|||
|
|
@ -7,9 +7,9 @@
|
|||
<div class="hex-border">
|
||||
<a href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</div>
|
||||
<a class="widget-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">{{title}}</a>
|
||||
<a class="widget-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}" onclick="{{onclick}}">{{title}}</a>
|
||||
<span data-list="statuses" data-level="1">
|
||||
<span class="label status {{status-class}}">{{status}}</span>
|
||||
</span>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<li class="index-content">
|
||||
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</div>
|
||||
<h4>
|
||||
{{title}}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<li class="index-content col-md-4 col-sm-4">
|
||||
<a class="index-content-title" href="{{link_to_show}}" target="{{target}}" title="{{title_text}}">
|
||||
<div class="link-img-wrap{{display_image}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
|
||||
<img src="{{img_src}}" alt="{{img_description}}">
|
||||
</div>
|
||||
<h4>
|
||||
<span class="link-title">
|
||||
|
|
|
|||
Loading…
Reference in New Issue