protected function getCssAttributesToRender() { $subMenuWidth = $this->getSubMenuWidth(); $selector = new Selector($this->getID() . ' ul', 'id'); $selector->addStyle('position', 'absolute'); $selector->addStyle('left', '-999' . 'em'); if (strlen($subMenuWidth)) { if (is_numeric($subMenuWidth)) { $selector->addStyle('width', $subMenuWidth . 'em'); } else { $selector->addStyle('width', $subMenuWidth); } } $borderWidth = $this->getBorderWidth(); $topBorder = -1; if (strlen($borderWidth)) { if (!stripos($borderWidth, 'px')) { if (is_numeric($borderWidth)) { $topBorder -= $borderWidth; } else { $topBorder -= rtrim($borderWidth, 'em'); } } } $borderWidth = $this->getBorderWidth(); if (!strlen($borderWidth)) { $borderWidth = '0px'; } $borderColor = $this->getBorderColor(); if (strlen($borderColor)) { $borderColor = '#' . $borderColor; } $borderStyle = $this->getBorderStyle(); $selector->addStyle('border', $borderWidth . ' ' . $borderStyle . ' ' . $borderColor); $selector->addStyle('height', 'auto'); $selector->setLevel($this->getLevel()); $background = $this->getSubMenuBackColor(); if (strlen($background)) { $selector->addStyle('background', '#' . $background); } $this->cssFile->addSelector($selector); //position the third lists on down $selector = new Selector($this->getID() . ' li ul', 'id'); if (strlen($subMenuWidth)) { $selector->addStyle('margin', $topBorder . 'em 0 0 ' . $subMenuWidth); } $selector->setLevel($this->getLevel()); $this->cssFile->addSelector($selector); $selector = new Selector($this->getID() . ' ul a', 'id'); if (strlen($subMenuWidth)) { if (is_numeric($subMenuWidth)) { $selector->addStyle('width', $subMenuWidth . 'em'); } else { $selector->addStyle('width', $subMenuWidth); } } $selector->setLevel($this->getLevel()); $this->cssFile->addSelector($selector); $selector = new Selector($this->getID() . 'A', 'id'); $background = $this->getBackColor(); if (strlen($background)) { $selector->addStyle('background', '#' . $background . ' !important'); } $color = $this->getForeColor(); if (strlen($color)) { $selector->addStyle('color', '#' . $color); } $enabled = $this->isEnabled(); if (!$enabled) { $selector->addStyle('font-weight', 'lighter !important'); } $padding = $this->getPadding(); if (strlen($padding)) { $selector->addStyle('padding', $padding); } $fontWeight = $this->getFontWeight(); if (strlen($fontWeight) && $this->isEnabled()) { $selector->addStyle('font-weight', $fontWeight); } $selector->setLevel($this->getLevel()); $this->cssFile->addSelector($selector); $selector = new Selector($this->getID() . ' :hover', 'id'); $color = $this->getHoverColor(); if (strlen($color)) { $selector->addStyle('color', '#' . $color . ' !important'); } $background = $this->getHoverBack(); if (strlen($background)) { $selector->addStyle('background', '#' . $background . ' !important'); } $selector->setLevel($this->getLevel()); $this->cssFile->addSelector($selector); $selector = new Selector($this->getID(), 'id'); $selector->setLevel($this->getLevel()); $this->cssFile->addSelector($selector); }