class MenuListItem extends HTMLElement{
constructor(){
super();
//create a shadow root
let shadow = this.attachShadow({mode:'open'});
//create tags we need in the component
let wrapper = document.createElement('div');
let pic = document.createElement('img');
let itemTitle = document.createElement('h6');
let itemDesc = document.createElement('span');
let bCell = document.createElement('div');
let price = document.createElement('div');
let btnWrapper = document.createElement('div');
let btnSlef = document.createElement('button');
let btnTxt = document.createElement('span');
//set style
this.setAttribute('class', 'col-lg-4 col-6');
wrapper.setAttribute('class', 'menu-item menu-grid-item');
pic.setAttribute('class','mb-4');
itemTitle.setAttribute('class','mb-0');
itemDesc.setAttribute('class', 'text-muted text-sm');
bCell.setAttribute('class', 'row align-items-center mt-4');
price.setAttribute('class', 'col-sm-6');
btnWrapper.setAttribute('class', 'col-sm-6 text-sm-right mt-2 …
Run Code Online (Sandbox Code Playgroud)