@@ -35,14 +35,16 @@ block main
35
35
36
36
section.my-20
37
37
h3.mb-4 ( data-i18n ="speakers.sessions" ) 議程講者
38
- .grid.mb-12 ( class ="grid-cols-3 md:grid-cols-5 gap-4 " )
38
+ .grid.mb-12.items-start ( class ="grid-cols-3 md:grid-cols-5 gap-6 " )
39
39
each speaker in schedule .speakers
40
- .mb-4.aspect-square.bg-slate-100.rounded-full.flex.items-center.justify-center.cursor-pointer.speaker ( data-id =speaker .id )
41
- - let speaker_name = (speaker .zh .name || ' ' ) + (speaker .zh .name === speaker .en .name ? ' ' : ' ' + speaker .en .name )
42
- if speaker .avatar && speaker .avatar .indexOf (' default' ) < 0
43
- img.rounded-full ( src =speaker .avatar , alt =speaker_name)
44
- else
45
- span.text-center ( data-i18n =` speakers.${ speaker .id } .name` ) = speaker_name
40
+ - let alt = (speaker .zh .name || ' ' ) + (speaker .zh .name === speaker .en .name ? ' ' : ' ' + speaker .en .name )
41
+ .speaker.flex.flex-col.items-center.justify-center.cursor-pointer ( id =speaker .id , data-id =speaker .id )
42
+ .w-full.flex.items-center.justify-center.aspect-square.bg-slate-100.rounded-full
43
+ if speaker .avatar && speaker .avatar .indexOf (' default' ) < 0
44
+ img.rounded-full ( src =speaker .avatar , alt =alt)
45
+ else
46
+ img.rounded-full ( src ="assets/img/default-avatar.svg" , aria-hidden )
47
+ .my-2.text-center ( data-i18n =` speakers.${ speaker .id } .name` ) = speaker .zh .name
46
48
block script
47
49
script( src ="assets/js/speakers.js?version=" + timestamp)
48
50
script .
@@ -54,7 +56,7 @@ block script
54
56
let bodyTmplDom = $ (`
55
57
<div>
56
58
<div class="flex items-center mb-4">
57
- <img class="rounded-full shrink-0 w-20" src="${ speaker .avatar } ">
59
+ <img class="rounded-full shrink-0 w-20 bg-slate-100 " src="${ speaker .avatar } ">
58
60
<h4 class="text-primary ml-4">${ speaker[currentLang].name } </h4>
59
61
</div>
60
62
<p>${ speaker[currentLang].bio } </p>
0 commit comments