Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt
Men's solid colour casual cotton linen short sleeve shirt

Men's solid colour casual cotton linen short sleeve shirt

Price
$0.00
$29.99
Save  $-29.99
Color
Please select a color
Size
Please select a size
Quantity
Worldwide shipping
Free returns
24/7 customer support
Secure payments
  • ⏰TIPS: All goods are authentic, with genuine patents, counterfeit must be investigated! Customers, please identify our products!!!
  • 🚢 Shipping>>Worldwide Express Shipping Available.
  • 1w+ Happy Customers.

Material: high-quality fabric

  • Button closure
  • Hand Wash Only

🌴80% Linen + 20% cotton material has good air permeability and comfort.

🌴Match: These casual cotton linen short sleeve shirts could be easy to match with dress pants, slacks, chinos, and jeans.

🌴Occasion: This casual cotton linen short sleeve shirt is the best choice for summer, Hawaiian, gym, parties, yoga, casual wear, the beach, fishing, working out, business, and wherever your adventures take you. 

🌴Feature: Casual tee shirt, summer beach short sleeve, formal work, fashion hip hop, business wear, henley neck shirts, performance t-shirt, workout tops, everyday casual, your must-have tops in wardrobe.

🌴NOTE: Hand Wash Cold; Do Not Bleach. M-XXXL 5 US regular sizes are available. Please refer to the Detail Size Chart in the Product Description to choose the best size to fit you.

Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.